iOS审核因IPv6被拒

最近提交的新版本因为IPv6问题被拒,审核组给的截图,页面是空的,说明请求之后没有拿到数据。在这之前,17年元旦之后,我们先后提交了三个版本,均审核通过,真是一脸懵逼,先自己搭环境测试。

搭建IPv6环境进行测试

两种方式:用网线、不用网线(热点方式)
因为我的Mac没有网线接口,买个转换接头要100大洋左右,果断选择第二种。具体步骤参考下面的文章,一步一步来就OK了。
iOS-不用网线搭建IPv6网络测试环境
测试结果:运行OK。

我重新打了个包提交审核,审核速度相当快,不到20个小时就给我拒了。。。我不死心,重新提交审核,又是不到20个小时就给我拒了。。。今年的五一过得真是相当心塞。

Mac搭建IPv6环境测试没问题仍然被拒怎么办

从网上查资料,发现Mac搭建IPv6环境测试通过,只能代表客户端应用在 IPv6 网络下,是没有问题的。此时手机和 Mac 之间是 IPv6 ,但 Mac 和你的服务器之间还是 IPv4 连接。无法验证你的服务器能够对 IPv6 网络做出正确的响应

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

验证服务器是否能响应IPv6的DNS查询

方法一: $ dig +nocmd +nostats example.com AAAA 如果返回的 status 为 NOERROR, 那基本就没什么问题。
我试着dig自己的域名,返回NOERROR,因此运维说服务器没问题,提交审核后依然被拒。这个方法的可靠性有待考证(我怀疑此时Mac与服务器之间依然是IPv4连接)

方法二:点击进行IPv6测试

界面如下:
输入域名.png

查看结果.png
结果表明服务器不支持IPv6,也不能响应 IPv6 的 DNS 查询
剩下的就是运维的事了。

和运维进行友好沟通

和iOS小伙伴们沟通IPv6被拒的解决方法,发现最难的不是找到被拒的原因,而是和运维扯皮。大部分小伙伴都听运维说过这句话:IPv6被拒和服务器没关系,服务器不需要做什么设置,应该是你们客户端的问题,你们看看代码怎么改一下。他们的证据就是上文说的“苹果明确表示服务器不需要支持 IPv6”。
这种时刻一定要明确责任。作为客户端,首先要确保代码中没有使用被IPv6禁止的方法,排除了自己的问题后,与运维沟通一定要坚定立场,是他们的问题就一定要让他们改。我和运维第一次沟通时不自信,不知道自己这里有什么问题但也以为是自己的问题,就重新提交审核又被拒,浪费四天时间。
明确责任不是在追责或者推卸责任,而是为了尽快解决问题使项目顺利上线。

我们使用的是阿里云服务器,参考文章阿里云 Ubuntu 支持 IPv6 的完整步骤

再次测试。

IPv6测试结果2.png

IPv6 web server 不通过没关系—你的服务器不用支持 IPv6
AAAA DNS record 通过即可—服务器必须正确响应 IPv6 的 DNS 查询

再次提交审核,通过。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值