Subject: Re: [v6ops] Apple and IPv6 - new NAT64 address synthesis API

From: Ross Chandler <[email-masked]>
Date: Tue, 31 May 2016 11:07:09 +0100

Hi David,

Can I ask what Apple’s intentions are for supporting tethered devices? In particular in the case where the iOS device only has IPv6-only PDP/PDN connections or a shared handset & tethering IPv6-only APN?
If the tethering interface of the iOS device can only provide 64share (RFC 7278) without support for IPv4 (e.g. via an RFC 6877 clat) then tethered devices will be restricted to those supporting IPv6-only connectivity using DNS64/NAT64.  

Thanks
Ross

> On 30 Oct 2015, at 04:51, David Schinazi <[email-masked]> wrote:
> 
> Hi everyone,
> 
> This week Apple released the first betas of iOS 9.2 and OS X 10.11.2.
> With it, we’ve introduced a new API to allow developers to synthesize NAT64 IPv6 addresses from IPv4 literals.
> We’re hoping that this will help more applications support NAT64 networks correctly while they work on getting server support for IPv6.
> As usual, we’d love feedback from the IETF community.
> 
> The API is very simple: we ask developers to always ``resolve'’ their IPv4 literals using getaddrinfo() by treating their IPv4 literal as a hostname string (e.g. ``192.0.2.1''), and we will take care of returning an IPv4 sockaddr on IPv4 networks and an appropriately synthesized NAT64 IPv6 sockaddr when the network supports IPv6, NAT64 and DNS64 but not IPv4. This is accomplished using RFC 6052 and RFC 7050.
> 
> Our target audience is application developers that need to communicate to an IPv4-only host for which they do not have a hostname. An example is a P2P service transmitting IPv4 literals over the wire. We do agree that the correct long-term solution is IPv6 support for all hosts and protocols but this is an effort to ease the transition. We believe this will help fix any remaining apps that do not support IPv6 before we start rejecting them from the App Store in early 2016.
> 
> More details and a code sample can be found on the Apple documentation website:
> 
> https://developer.apple.com/library/prerelease/tvos/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html#//apple_ref/doc/uid/TP40010220-CH213-DontLinkElementID_4 <https://developer.apple.com/library/prerelease/tvos/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html#//apple_ref/doc/uid/TP40010220-CH213-DontLinkElementID_4>
> 
> Thanks,
> David Schinazi
> Apple CoreOS Networking Engineer
> _______________________________________________
> v6ops mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/v6ops