当我使用 ipv6 互联网时,我的服务器是否应该支持 ipv6 才能获取数据

Should my server support ipv6 to be able to get data when i use ipv6 internet

我正在尝试将我的应用程序添加到应用商店,但是 returns 这个错误 我的应用程序不支持 ipv6,人们告诉我应该创建 ipv6 网络来测试我的应用程序。 现在我在服务器上有数据但是有这个数据的服务器不支持 IPV6 如果它支持 IPV6 只支持 IPV4 或者可以使用 IPV6 从不支持 IPV6 的服务器获取数据

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

您可以尝试回答 Appstore,您的服务器端托管服务提供商不支持 IPv6。对于我的情况它有效。

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

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

深入解释:Apple 希望您的客户端应用程序在连接到纯 IPv6 网络时能够正常工作,但是纯 IPv6 网络必须有所帮助通过提供符合 DNS64 (RFC 6147) 的 DNS 解析器并提供 NAT64 (RFC 6146) IPv6 到 IPv4 转换网关 来为您的应用程序提供服务。这意味着您的客户端应用程序向 www.myipv4onlyserver.com 发出 DNS 请求,解析器使用路由到 NAT64 网关的虚假 IPv6 地址进行回复。因此,您的客户端应用程序使用 IPv6 与此网关通信,而此网关将数据通道转换为您的 IPv4 服务器,就像透明代理一样。

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

有关详细说明,请参阅 this Apple forum article and this Apple networking guide