0

Since last week one user of an app of mine is reporting that the app cannot reach the server on a cellular network. His phone is running iOS 14.7.1 and he has an LTE network connection. The app works perfectly on wifi and I have not had any reports of other users not being able to use the app on cellular networks.

First I thought it was a network detection issue (reachability not being able to see the cellular network), but when I ignore the network detection and simply make the HTTPS request, it does not connect. There is no response from the server. The weird thing is that this is an app with a Google map. The map loads, but the location markers that come from my server are not loaded.

I cannot think of any reason why this is happening and as my testing options are very limited (only this one user is reporting it, I cannot replicate myself), I am kind of lost as to what causes the issue, let alone how to fix it. Are there any settings that I should be aware of for connections over LTE networks to work? Have any new settings been introduced in iOS 14.7 that might affect this? Should the user make any changes on his phone to allow my app to use the cellular network?

I am using a very standard URLSession datatask with an URLRequest to make the call (which works without any issue over wifi).

ehusmann
  • 37
  • 8
  • Have you tested your app on a pure ipv6 network or at least tested ipv6 connectivity to your server? – Paulw11 Aug 17 '21 at 10:00
  • I have not. A quick test shows that my server is probably not set up for ipv6 connectivity. Could it be that just enabling that on my server would solve the problem? – ehusmann Aug 17 '21 at 10:14
  • Yes. Some networks are moving to pure IPv6 as IPv4 addresses are exhausted. Apple will now test your app on a pure IPv6 network as part of review – Paulw11 Aug 17 '21 at 10:29
  • My app is in the store, so if Apple has been checking on that, it must have worked. I have also set up a local NAT64 network as explained by [Apple](https://developer.apple.com/library/archive/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html#//apple_ref/doc/uid/TP40010220-CH213-SW16), which worked after some fooling around. But that is not full IPv6 to IPv6, how can I test that? And how do I know that is the issue my user has? – ehusmann Aug 17 '21 at 13:07
  • Since it is just one user on LTE it could be some sort of routing problem between that LTE provider network and your server. Particularly since the Google map still works. Without having access to a device on that LTE network it is difficult to diagnose. You can use this site for a basic IPv6 test of your server https://ipv6-test.com/validate.php – Paulw11 Aug 17 '21 at 20:37
  • I have used that site indeed and it says I have no AAAA record. Also checked with the hosting company, it says it will start offering IPv6 support to their customers later this year. In other words, I can probably not fix this right now... If indeed this is the issue. – ehusmann Aug 18 '21 at 14:16

0 Answers0