如何在iOS8

时间:2016-05-24 09:38:00

标签: ios networking ios8 ipv6

我正在实现我的应用程序以兼容仅支持IPv6的网络。 有没有办法在iOS8.x中处理硬编码的IPv4地址文字(如172.1.2.3)?

根据apple documentation

- 在iOS 9及更高版本中,NSURLSession和CFNetwork会自动在运行DNS64 / NAT64网络的设备上本地合成IPv4文字中的IPv6地址。

- 在iOS 9.2中为getaddrinfo()添加了合成IPv6地址的功能。

但是没有提及如何处理 iOS8.x 的地址文字。

1 个答案:

答案 0 :(得分:1)

正确。在连接到旧服务的现代网络上使用古老iOS版本的用户将遇到连接问题。最好的解决方案是:

  • 切勿在代码中使用硬编码地址
    • 有很多很好的理由,只是不要硬编码地址并使用DNS
    • 如果您使用DNS,那么NAT64提供商将为您处理翻译
  • 确保您的服务器可通过IPv4和IPv6访问
    • 这使您的服务可达性更好
    • 它使NAT64变得不必要,使用可以只使用本机IPv6而没有任何黑客攻击

如果你想运行一个好的服务并写一个好的应用程序,请执行以上两个操作。