liberize
2016-07-27 13:03:16 +08:00
如果是为了过 AppStore 的审核,用 mac 分享一个 WiFi 出来就可以了。
苹果主要测试这种 IPv6 only 环境下通过 NAT64/DNS64 访问 IPv4 服务器的情况。
如果使用的高级 API ,应该不需要改代码就直接可以 work 。
如果使用了底层 API ,全部用 AF_INET6 的 socket ,通过 getaddrinfo 将域名 / IPv4 地址转成 IPv6 地址,将 gethostbyname 、 inet_addr 这些只支持 IPv4 的 API 替换成 getaddrinfo 、 inet_pton 等新的 API 。
转换地址时不要自己拼接 ::ffff: 和 64:ff9b:: 这种前缀,应该使用 getaddrinfo 获取。(因为 NAT64 的前缀不一定是 64:ff9b::,比如苹果的 App Review 环境前缀是 64:ff9d::。)