08-04-2024 15:00 PM
Hello! I've got a OnePlus 5 that I've flashed with a third party ROM and enabled VoLTE and VoWIFI support on. I realise this is outside your support window (or official list of wifi calling devices, which starts with more modern OnePlus models), but on my university's wifi network, this works absolutely fine for wifi calling. Another network I use extensively has more restrictive firewall rules and a split-tunnel vpn set up, and wifi calling doesn't work there. I believe that if I could configure the AP to route the VoWIFI traffic differently I would be likely to be able to use this feature on another network. In order to do so, ideally I'd like to know the server details that my phone will connect to for Smarty's ePDG ("evolved packet data gateway" – which is used to connect to bridge 3G traffic over to their internal network).
AOSP details quite a lot of the carrier configuration information that it obtains -- https://developer.android.com/reference/android/telephony/CarrierConfigManager and in particular https://developer.android.com/reference/android/telephony/CarrierConfigManager.Iwlan -- but these aren't exposed by a userland application unless it is signed by the CarrierConfig key (i.e. Smarty's app), and that both isn't signed by them for it and doesn't expose the info. I could probably go delving into finding out this information, but I thought I'd ask first!
In brief, the possible options for answers are:
a) It is a static address (EPDG_ADDRESS_STATIC) -- in which case, does anyone here know what it is?
b) It is generated automatically via plmn – most likely by an attempt to resolve epdg.pub.epc.mncXXX.mccXXX.3gppnetwork.org where mnc and mcc are Smarty's MNC and MCC IDs, which I can see are:
<apn carrier="SMARTY"
mcc="234"
mnc="20"
apn="mob.asm.net"
mmsc="http://mms.um.three.co.uk:10021/mmsc"
mmsproxy="mms.three.co.uk"
mmsport="8799"
type="default,supl,mms"
protocol="IP"
roaming_protocol="IP"
mvno_type="gid"
mvno_match_data="0309"
/>
<apn carrier="SMARTY IMS"
mcc="234"
mnc="20"
apn="ims"
type="ims"
protocol="IPV4V6"
roaming_protocol="IPV4V6"
mvno_type="gid"
mvno_match_data="0309"
/>
from `/etc/apns-conf.xml`. However, the resulting implied address doesn't resolve (AFAIK) -- and thus I don't think it's this method being used
c) `EPDG_ADDRESS_PCO` -- in which case the information is obtained from the protocol configuration options (PCO) from the network. I suspect this is more likely.
I probably could work this out myself (e.g. via simply packet capturing what the phone sends out when on a network that works and working out what the firewall is blocking) but thought I'd ask here first.
For those who are interested and don't have a clue what I am talking about – the ePDG is spoken to via a glorified IPSEC VPN and authenticates the connection from your phone (or "user equipment" in networkland speak) to the broader network run by the carrier over which the calls are routed. A useful picture is below. I just want to know the name of the gateway that my phone is connecting to in order to punch a hole in the firewall for it!
08-04-2024 15:08 PM
This is the Smarty community forum, we are Smarty customers just like you. I doubt any of us customers would have the info you are trying to obtain.
You could try a webchat with Smarty.
09-04-2024 10:00 AM
Ahh -- thanks. I didn't quite realise that. I tried a webchat but they weren't terribly informative.
A bit of digging and it transpires the SIP gateway host is epdg.pub.epc.mnc020.mcc234.3gppnetwork.org. It mostly seems to create the IPSec tunnel after IKE to a variety of ipv6 endpoints (particularly `2a04:4a44:5:1004::8`, which is registered to Hutchinson 3G. The network VoWIFI doesn't work on happens to block ipv6 traffic entirely, although I'm sure others do too where it _does_ work.
09-04-2024 15:26 PM
All that has largely gone way over my head.
Endooints will be registered to Hutchinson 3G, as they are the ultimate parent company of Three and Smarty.
At a guess, because you are using what is in effect a “jailbroken” phone, I doubt there would be any support for it.
Would anyone on your degree course, either at your uni or other universities in the UK have the answer you are looking for ? I am guessing there are various forums etc you can post on ?
Good Luck 👍