2017-07-26 80 views

回答

0

您的服务器可以接收数据以两种方式通过IPv6请求: 1)您的服务器支持IPv6并具有IPv6地址(同时大多数主机都支持此功能)。 2)服务器前面的某些设备(硬件或Linux路由器)应同时支持IPv6和IPv4。它将通过IPv6接收请求,并通过IPv4将它们传输到您的服务器。

您可能会尝试回答Appstore,即您服务器端的托管服务提供商不支持IPv6。对于我的情况它的工作。

0

这是一个敏感话题,许多人对此有错误的认识。

您的应用必须支持纯IPv6网络。但是您的服务器可能不支持IPv6:决定是否支持IPv6取决于您。

深入的解释:苹果预计客户端应用程序才能正常工作时,连接到纯IPv6网络,但仅支持IPv6的网络必须通过提供DNS解析器是DNS64标准(RFC帮助您的应用程序6147)并且还提供NAT64(RFC 6146)IPv6到IPv4转换网关。这意味着您的客户端应用程序向www.myipv4onlyserver.com发出DNS请求,并且解析器以路由到NAT64网关的虚拟IPv6地址回复。因此,您的客户端应用程序会使用IPv6与此网关通信,并且此网关将数据通道转换为您的IPv4服务器,如透明代理。

要符合Apple的期望,请使用高级网络库和地址无关的API,例如getaddrinfo()和getnameinfo()。使用主机名或FQDN,而不是IP地址。

有关详细解释,请参见this Apple forum articlethis Apple networking guide