Back at their June 2015 WWDC event, Apple announced that all iOS 9 applications must support IPv6. This week Apple declared that as of June 1 all apps submitted to the AppStore MUST support IPv6-only networking. From Apple’s blog post:
At WWDC 2015 we announced the transition to IPv6-only network services in iOS 9. Starting June 1, 2016 all apps submitted to the App Store must support IPv6-only networking. Most apps will not require any changes because IPv6 is already supported by NSURLSession and CFNetwork APIs.
If your app uses IPv4-specific APIs or hard-coded IP addresses, you will need to make some changes.
As Apple continues to point out, the vast majority of application developers will not need to do anything to support IPv6. If developers use the standard networking APIs provided by Apple, they should not experience any problems in an IPv6-only network. It should “just work”. It’s only when developers use IPv4-specific APIs or addresses that there is a problem.
Why This Matters
This is an extremely important step. As I wrote last year after WWDC 2015, this requirement means that iOS apps will work in the IPv6-only networks that we are starting to see appear.
More than that, this requirement will drive millions of developers to test their apps in an IPv6-only network. This kind of testing will increase basic knowledge developers have of IPv6 – and will lead to better networking knowledge all around.
Additionally, for an application to work on an IPv6-only network, this also means that the site or service to which the application connects needs to be accessible somehow over IPv6. Now, this doesn’t matter for many apps that work only an iPhone and don’t need network connectivity. But for apps that do connect back to a site, that site / service will need to be reachable over IPv6. This should wind up causing more developers to explore how to make their web sites and services available over IPv6 – which should in turn cause requests to ISPs and hosting providers for IPv6 access.
All in all it is a great move to help drive IPv6 usage!
Getting Help
Apple suggested that people read their developer documentation “Supporting IPv6 DNS64/NAT64 Networks” and watch the WWDC 2015 video “Your App and Next Generation Networks“. I previously provided a summary of this video along with screenshots of the major points.
We would of course also suggest you visit our Start Here page to find IPv6 resources for your type of organization. Specifically for app developers we suggest:
- Developer Resources for IPv6
- Making Content Available Over IPv6 – if your app needs to connect back from an IPv6-only network to your site/services, this explains options for making your web content available over IPv6.
The key point is to start NOW if you haven’t already, as any AppStore submissions after June 1 will require IPv6-only testing.
Thank you, Apple, for making this hard requirement! It will only help as we continue to work to transition the Internet from the “beta” of IPv4 to the “production” IPv6 network!
More discussion of this topic: