Hello everyone:
I think I have found a pretty serious bug in the iOS 9 Public Beta:
At home I have a router provided by my ISP. Because I want to use my Fortigate firewall, I have to set up my firewall with the WAN in the private network provided to me by the ISP, with my network behind it. I have my ISP router forwarding everything (DMZ) to my firewall. This is, more or less, completely transparent, as I can forward ports and create VPN connections directly on my Fortigate without touching anything else on the ISP router.
My iPad, running iOS 8.4, works just fine using the same exact connection parameters. I can dial in via IPSec and access my home network or the internet via VPN. However, when I connect with my iPhone running the latest iOS 9 public beta, the connection comes up, but I cannot pass any traffic. More specifically, traffic leaves the iPhone, arrives at the firewall, is forwarded to the destination, comes back to the firewall, is reencrypted and sent back to the iPhone, then nothing.
I think it has something to do with NAT Traversal. With standard IPSec, UDP port 500 is used. If the protocol detects NAT in the middle, it will switch to port 4500. I think the iPhone understands how to build a connection with NAT in the middle, but when the packets arrive, something happens and the iPhone forgets about NAT Traversal, dropping the packets. It's the only thing I can think of.
Is there any way to directly contact Apple with this issue without going through the low-level "have you tried rebooting your phone" guys first?