App store 应用审核由于 IPv6 网络问题被拒的一点分析

释放双眼,带上耳机,听听看~!

先分析一下情况,很多开发者抱怨自己按照苹果给出的方法,在自己电脑上搭了 IPv6 的环境测试了,没有问题,为啥一提交审核就不行了呢?这里就要看一下本机搭的这个 IPv6 环境到底是怎么回事,它到底能验证什么。

苹果提供的方法是帮我们创建一个 NAT64 的网络,这里先要搞清楚啥是 NAT64. 其实简单来说,就是这样的:

所以,手机和 Mac 之间是 IPv6 没错,但 Mac 和你的服务器之间还是 IPv4 连接。如果这项测试通过,可以说明:你的客户端应用在 IPv6 网络下,是(基本)没有问题的,但是无法验证你的服务器能够对 IPv6 网络做出正确的响应。

然而,苹果审核的时候,却是要去 DNS 服务器询问你的服务器的 IPv6 地址,然后进行访问。如果查询不到 IPv6 地址,可能会进而询问 IPv4 地址,然后进行转换使用。苹果明确表示服务器不需要支持 IPv6,但是有一点苹果没有指出来,那就是,虽然你的服务器不用支持 IPv6,但是必须正确响应 IPv6 的 DNS 查询。

如何验证呢??在终端上使用以下命令即可:

$ dig +nocmd +nostats example.com(即域名) AAAA

如果 IN A  那是ipv4 (如果地址是用点分成四段的,就是IPV4,如果是用冒号分段的,就是IPV6(IPv6原理是分成6段,但是某些时候你看不出来,因为连续的0会被省略,如:1::ab:10、23::32))
, 那Got answer  有个status:NO ERROR ,一般status是no error 就没问题。但是一定要在多个网络环境下测试都通过才行。如果返回的是其他的响应,尤其是 SERVFAIL 的情况,那就基本杯具了。由于你已经验证了客户端没有问题,现在要做的,就是催着你的运维、后台啥的,赶紧去改 DNS 配置,直到稳定返回 NOERROR 为止。

人已赞赏
iOS文章

iOS上下滚动的公告图

2020-3-30 23:17:01

iOS文章

本地 Mac 搭建 IPv6 测试环境

2020-3-31 0:32:04

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索