iOS9 中的 IPV6 并配置 IPV6 启用 API

IPV6 in iOS9 and configuring the IPV6 enable API

我的申请被拒绝了,因为它没有启用 iPV6。

我浏览了 the documentation 并且很少研究 iPV6 和许多其他链接。

但我需要了解并需要对与采用 IPV6 相关的一些要点进行更多说明。

  1. 当苹果说“仅支持 IPv6 的网络”时。 这是否意味着我无法通过套接字编程或 HTTP 主机连接到 ipv4 服务器?

  2. 要访问启用了 ipv4 的服务器或与之通信,我必须采用苹果为 http post 提供的新 API(nsurlsession 和 nscfnetwork)?

  3. 什么是合成ipv6地址? 这是否意味着我将在我的客户端(iOS 应用程序)中写入域或 ipv6 地址并且 iOS 将 ipv6 地址转换为 ipv4 并通过我的套接字编程或 http [=75] 将其传递给服务器=] ?

    要合成 ipv6 地址,需要此函数:getaddrinfo

  4. 示例:我的客户端(ios 应用程序)与不同的服务器通信。

    一个。 Server1 是 iPV4
    b.Server2是ipv6

    我该如何处理?

  5. 我是否需要任何其他外部实体,如 DNS/NAT 服务器来帮助我将 ipv4 转换为 ipv6? 或者 iOS9 及以上 OS 自己做?

  6. Ipv6 从 ios9.2 或 ios9 开始是强制性的?

  7. 我的应用也支持ios8。 其中对ipv6服务器没有要求。 如何管理 ios8 与 ipv4 通信的代码和 ios9 中用于 ipv6.

  8. 的综合代码

请给我澄清,帮助我理解 ipv6 的确切要求。

我是网络端代码的新手。

当找不到 IPv6 位置时,DNS64 服务器会请求 IPv4 地址。然后,DNS64 服务器通过在 IPv4 地址前加上前缀来集成 IPv6 地址,并将其传回给客户。通过这种方式,客户可以可靠地获得 IPv6 准备的位置。

您只能使用 domian 名称 连接 IPv4-Only 服务器,而不是 ip 地址。

或者当用户处于纯 IPv6 网络中时,您可以使用 NAT64 地址(通常以 64:ff9b::/96 为前缀,并且可以通过查询纯 IPv4 服务器的 AAAA 记录来发现)。

对于大多数开发人员来说,您不需要做任何事情。

并且您可以尝试在您的 macOS 可以创建的 NAT64 网络中调试应用程序。

注意:如果可以,请使用3.x或更高版本的AFNetworking库。