apns: Update all Canadian carriers
Why: - They're all pretty outdated. - Many carriers do not document APN settings, and the ones which do don't include ims/xcap/sos. - The Quebecor ones (Fizz/Freedom/Videotron) are very broken, especially Freedom. - Many MVNOs are missing or partly missing (i.e., missing additional match conditions). - Some APNs are incorrect. - Most IMS APN settings are outdated (e.g., almost all should now be IPV4V6). - Some APNs with bearer_bitmasks are missing NR (20). - Some APNs aren't properly configured for IWLAN (18). Why not do it based on AOSP: - Almost all Canadian carriers are extremely outdated there. - Some are missing compared to the pixel ones (and even those have some minor issues especially with the Quebecor ones). These were compiled using a combination of data from: - Recent phones well-supported by Canadian carriers: - Pixel shiba_AP2A.240905.003 CarrierSettings (extracted via lineage carriersettings-extractor and verified manually). This one tends to be the best overall. - Motorola Edge 2024 (XT2045-1) XT2405-1_AVATRN_RETCA_14_U2UANS34.72 apns-conf. This one tends to have ones which Google is missing, but is quite a bit more messy overall. - Samsung Galaxy S24 (S921W) S921WVLS3AXI1/S921USQS3AXI1/MQB86303474 apns-conf. This one usually matches Google, but has some misconfigured MVNOs. It's still good as a third point of reference. - AOSP carrier_list.pb for confirming carrier_id matches (it's actually up-to-date unlike the APNs from various sources) and for ensuring all mvno matches exist. - Pending AOSP patches from employees of Canadian carriers. - Official carrier documentation. Also see https://github.com/pgaskin/apnstuff/blob/177c6b9d469165f3d9f9193e48d30e1351476196/mcc302.xml (and the diffs in experiments/curated) for the stuff in a more readable format. A rough summary of where each set of APNs comes from is below: Xplore (https://www.xplore.ca/) - 302130 - based on motorola APNs (goog/sam don't have it) - added carrier_id since there's an exact match Cogeco (https://corpo.cogeco.com/cgo/en/press-room/press-releases/cogeco-announces-strategic-partnerships-national-wireless-network-operator-and-eastlink-launch-mobility-services-canada/) - 302150/302151 - based on motorola APNs (goog/sam don't have it) - not generally available yet - renamed TELUS - Koodo (https://www.koodomobile.com) - 302220/302221 gid=4B4F - based on google APNs - note that Samsung uses just "4B" as the prefix, but google, aosp, and the carrier_list uses 4B4F, so I'm going with that - https://www.koodomobile.com/en/help/setting-data-your-non-koodo-phone has some of the APNs - renamed - sp.koodo.com type dun removed, supl added (https://android-review.googlesource.com/c/device/sample/+/3191311) - sp.koodo.com roaming_protocol=IP added (https://android-review.googlesource.com/c/device/sample/+/3191370) - ims roaming_protocol changed from IPV6 to IPV4V6 (https://android-review.googlesource.com/c/device/sample/+/3191370) TELUS - Public Mobile (https://www.publicmobile.ca) - 302220/302221 gid=4D4F - based on google APNs - https://www.publicmobile.ca/en/on/get-help/articles/set-up-data-on-an-android-phone - renamed - isp.mb.com protocol+roaming_protocol=IP added (https://android-review.googlesource.com/c/device/sample/+/3191510) - sp.mb.com roaming_protocol=IP added (https://android-review.googlesource.com/c/device/sample/+/3191510) - ims roaming_protocol changed from IPV6 to IPV4V6 (https://android-review.googlesource.com/c/device/sample/+/3191510) PC Mobile (TELUS MVNO) (https://www.pcmobile.ca/en/) - 302220/302221 gid=5043 - based on google APNs - https://www.pcmobile.ca/en/help/sim-card-and-phone-support/APN-settings/ - renamed - https://www.reddit.com/r/bell/comments/1cv8jf2/does_pc_mobile_really_have_volte/ says no volte on the pixel 8 as of 2024-05, which checks out given that ims/xcap isn't in the apns for it - motorola and samsung don't have ims/xcap for it (or for generic 302220/302221 either) - https://www.cellphones.ca/cell-plans/carriers/pc-mobile/ also says volte not supported TELUS (https://www.telus.com/en) - 302220/302221 gid=5455 - based on google APNs - note that Samsung uses just "54" as the prefix, but google, aosp, and the carrier_list uses 5455, so I'm going with that - https://www.telus.com/en/support/article/activate-data-on-your-android-device - renamed - isp.telus.com protocol+roaming_protocol=IP added (https://android-review.googlesource.com/c/device/sample/+/3185999) - sp.telus.com roaming_protocol=IP added (https://android-review.googlesource.com/c/device/sample/+/3185999) - ims roaming_protocol changed from IPV6 to IPV4V6 (https://android-review.googlesource.com/c/device/sample/+/3185999) skipped a bunch of seemingly TELUS MVNOs which don't exist afaik other than as APN entries on samsung and motorola, and as entries in carrier_list the odd thing about them is most have an xcap apn with a mmsc of mms.mnc340.mcc313.pub.3gppnetwork.org... and 340313 is Dish in the US I can't find anything on Google about Dish having any kind of relationship with TELUS also, for Boost, https://www.reddit.com/r/BoostMobile/comments/x0qz8k/going_to_canada_in_2_weeks/ claims they have no coverage at all in Canada for Ting, I found https://www.cbc.ca/news/business/the-canadian-mobile-phone-service-you-can-t-get-here-1.1337824 none of these are in aosp, lineage, or google currently - 302 220 gid=6332 Boost (2518) - 302 220 gid=6336 Boost (2614) - 302 220 gid=6530 Home (2517) - 302 220 gid=6538 Project Genesis (2528) - 302 220 gid=6630 Republic (2520) - 302 220 gid=6636 Gen Mobile (2619) - 302 220 gid=6638 Boost (2621) - 302 220 gid=6732 Boost (2613) - 302 220 gid=6736 Boost (2615) - 302 220 gid=6738 Project Genesis (2616) - 302 220 gid=6830 Republic (2617) - 302 220 gid=6836 Gen Mobile (2620) - 302 220 gid=6838 Boost (2622) - 302 220 gid=7330 Ting (2521) - 302 220 gid=7530 Ting (2618) - 302 220 gid=8030 (unknown, no match in carrier_list) - 302 220 gid=9030 (unknown, no match in carrier_list) skipped 302 220 spn=WOM (only motorola has it) EastLink (https://www.eastlink.ca/) - 302270 - based on motorola APNs (eastlink does not sell pixels - https://www.eastlink.ca/mobile/phones, and the google apns seem to be outdated/incomplete) - removed motorola-specific agps type - https://my.eastlink.ca/Portals/0/Wireless/Eastlink-Config-Android-Windows-Other.pdf?versio - renamed Rogers - Chatr Mobile (https://www.chatrwireless.com/) - 302320 - based on google APNs (is the mostly the same as the aosp ones, but also has xcap/ims) - https://www.chatrwireless.com/support/network-and-data - renamed Rogers - Fido (https://www.fido.ca/) - 302370 + 302370 gid=DD - based on google APNs (this one is a bit messy across manufacturers) - https://forums.fido.ca/t5/General-Support/Fido-s-APN-amp-MMS-Settings/m-p/91614 (this one is outdated - fido-core-appl1.apn has been replaced with ltedata.apn) - https://www.fido.ca/support/mobility/cannot-open-websites-apps-mobile-phone (this one is newer) MTS (Rogers MVNO) - 302370 gid=2C - based on google APNs - see the Bell MTS APNs below MTS (Rogers MVNO) - 302370 spn=MTS - based on motorola APNs - removed motorola-specific agps type - no carrier_list match - see the Bell MTS APNs below Quebecor - Freedom Mobile (https://www.freedommobile.ca/en-CA) - 302490 - based on google APNs (they are the best ones: samsung and motorola have some of it, but are missing some options; aosp is bad) - fully tested (note that it also requires at least the 302500/302500 apns to work correctly, and may also require other canadian ones for nationwide) - renamed Shaw Mobile - 302490/302500 imsi=302490400/imsi=302490500/gid=53 - skipped - mvno no longer exists and customers have been migrated (https://support.shaw.ca/t5/billing-account-articles/rogers-shaw-coming-together-faq/ta-p/56371, https://www.digitalhome.ca/threads/rogers-forces-move-from-shaw-mobile.294940) (also, motorola and samsung don't include these) Quebecor - Videotron (https://www.videotron.com/) - 302500/302510/302520 - based on a combination of motorola's, google's, and samsung's APNs - google doesn't include 302500, and I'm not sure if they're strictly required or if videotron only uses 302510/302520, but let's be safe and keep them - google puts a mmsproxy of 10.208.89.17 for 510/520, but I'm 90% certain this is outdated (motorola and samsung don't, and fizz alsu used to use that IP before they switched to mmsproxy.mobile.bm) - motorola lists apn types "default,mms,dun,agps,supl,fota,hipri" for the default apn, but they seem to do that when they don't know better, and samsung/google uses "default,mms,supl", so let's use that - https://www.videotron.com/soutien/mobilite/configurer-services/configurer-apn - renamed - my diff page is extremely helpful for comparing these: https://htmlpreview.github.io/?https://github.com/pgaskin/apnstuff/blob/master/experiments/cmp/mcc302-all.split.html Quebecor - Fizz (https://fizz.ca/en) - 302500 gid=55 - mostly based on google's APNs - almost as much of a mess as Videotron - google's one has ipv6-only for ims, and I'm 99% certain it should be IPV4V6 like motorola's and other carriers - motorola's only has bearer 18 for xcap, and I'm 99% it should be for all bearers like google's - motorola has the apns copied to mnc=510 too, but I'm 70% sure this is a mistake since it isn't in the carrier_list and nothing else has it - samsung's doesn't have ims, but motorola and google do, and I'm 100% certain it should - samsung's has only IPV6 as the protocol for IMS, but motorola's has IPV4V6, and I'm 99% certain the latter is correct - https://fizz.ca/en/faq/what-are-fizz-network-settings-apn - https://fizz.ca/en/faq/why-volte-important - renamed - my diff page is extremely helpful for comparing these: https://htmlpreview.github.io/?https://github.com/pgaskin/apnstuff/blob/master/experiments/cmp/mcc302-all.split.html Bell Mobility (https://www.bell.ca/) - 302610/302630/302640 - based on google's APNs - renamed - pretty uncontroversial and consistent between google/motorola/samsung, but google's is the cleanest - changed IMS protocol/roaming_protocol to IPV4V6 to match current aosp and other canadian carriers Bell - Virgin Mobile (https://www.virginplus.ca) - 302610/302630/302640 gid=3E - similar to bell, same thing about ims Solo Mobile (Bell MVNO) (https://www.solomobile.ca/) - 302610/302630/302640 gid=3F - similar to virgin PC Mobile (Bell MVNO) (https://www.pcmobile.ca/en/) - 302610/302630/302640 gid=40 - similar to virgin Bell - Lucky Mobile (https://www.luckymobile.ca/) - 302610/302630/302640 gid=42 - similar to virgin Bell - MTS (https://www.bellmts.ca/personal?cookieCheck=1) - 302660 gid=2C/spn=MTS - based on google's APNs - note that google's doesn't have the gid=2C match condition, but it's not important since only MTS uses 302660 - added carrier_id=578 SaskTel (https://www.sasktel.com/store/browse/Personal/_/N-26v0) - 302654/302680/302681/302780/302781 - based on google's APNs - https://support.sasktel.com/app/answers/detail/a_id/12121 - added missing carrier_id - renamed Lum (SaskTel MVNO) (https://lum.ca/) - 302780 gid=5B Bell IoT - 302690 - gid=41/gid=43 - based on aosp Rogers (https://www.rogers.com) - 302720 - based on google's APNs - almost exactly matches AOSP, but has some newer IMS-related stuff (e.g., protocol IP -> IPV4V6) - renamed Rogers 5G (https://www.rogers.com) - 302720 gid=A4 - similar to Rogers, has slightly different APNs - https://www.rogers.com/support/mobility/5G-network-faqs Rogers - Tbaytel (https://www.tbaytel.net/) - 302720 gid=BA OR 302720 imsi=302720x92 - similar to Rogers - added missing carrier_id Rogers - Cityfone (https://www.cityfone.net/) - 302720 gid=CC OR 302720 imsi=302720x97 OR 302720 spn=CITYFONE - similar to Rogers - gid=CC doesn't seem to exist in carrier_list, but I'm keeping it anyways - added missing carrier_id - being discontinued, see website Rogers - Chatr (https://www.chatrwireless.com/) - 302720 gid=D2 OR 302720 imsi=302720x84/302720x83/302720x94 - similar to Rogers Rogers - Ztar - 302720 gid=D4 OR 302720 imsi=302720x98 - similar to Rogers - gid=D4 doesn't seem to exist in carrier_list, but I'm keeping it anyways Rogers WPN (https://www.rogers.com/business/iot/wireless-private-network) - 302781 - based on google APNs - renamed Change-Id: Iafb39363c07e74d3cda5868e32c38d684a8f2989 (cherry picked from commit 56ec683e)
Loading
Please register or sign in to comment