iOS App对IPv6的支持

从2016年6月1号之后发布或更新App必须要支持IPv6。如果不支持IPv6,直接就会被拒。通过苹果官方文档上提供的方式配置IPv6网络,而后进行IPv6测试,应用跑的很溜,没有出现网络报错和请求慢的问题。

但当把App提交给苹果审核时,缺被拒了。而且被拒的理由竟然是:
We discovered one or more bugs in your app when reviewed on iPad and iPhone running iOS 9.3.3 on Wi-Fi connected to an IPv6 network.
还给发了截图,
这里写图片描述
通过截图可以看出来,明显是网络请求不通。

由于是二进制被拒,我们又仔细的按照苹果文档配置了IPv6网络环境,进行了各种网络类型测试,应用还是跑的很溜,没有显示错误和请求不通等问题。于是我们决定提交复审申请。

在经过一天的等待之后,发现复审又被拒了。看被拒原因,竟然还是因为IPv6测试不通过。
Thank you for your resubmission. However, we continue to find that your app prompts connection error messages during checkout when reviewed on iPad and iPhone running iOS 9.3.3 on Wi-Fi connected to an IPv6 network.

彻底懵逼了,这一切都是按照苹果文档说明的方法去做的,为啥还是被拒呢。
只能继续查问题所在,先了解IPV6吧。查询IPv6的维基百科。在IPv6和域名系统目录下,有这样的解释:
IPv6地址在域名系统中为执行正向解析表示为AAAA记录(所谓4A记录,类似的IPv4表示为A记录A records);反向解析在ip6.arpa(原先ip6.int)下进行,在这里地址空间为半字节16进制数字格式。
通过这个解释,简单的理解为,通过IPv6-Only从App发起的request到server,访问的是4A下解析的域名。可以通过toolbox测试App的域名在4A下是否有正确的域名解析。

通过这个dig的解析,发现我们的域名不支持4A解析。但通过与网络服务商沟通,现在国内大都不支持IPv6,所以不能进行4A记录解析。只能通过cname解析来弥补不能进行4A解析的缺陷了。进行过cname解析,再进行4A解析可以看到ANSWER下有解析值了。

再次提交复审,经过漫长的等待,终于通过了苹果的审核。


因为这里用了Google的dig服务,所以需要翻墙。


如果有问题可以进QQ群(295976280)讨论

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值