最近被IPV6导致的拒审主要有以下几点
- 2.1:指明在ipv6网络下,访问不到应用,无法测试
- 2.5.5:直接指明是IPV6问题无法测试
针对以上的问题,我们改过很多次,也提过不少方案。最终选择以下性价比最高的方案:
- 游戏底层代码做到支持IPV6;
- 所有与网络请求关了IP变更为域名;
- 域名全部走海外代理加速;
- 服务器支持全球加速(至少满足北美Apple总部审核团队需求)。
苹果有关IPV6官方说明:https://support.apple.com/zh-cn/HT202236
有几个当时产生疑惑分享给大家
问:有关国内搭建IPV6环境测试?
这个方式我原本也想过,但是实现起来困难在于要走教育网络,而走了教育网络依然会继续转为IPV4,所以没有搭建专线。
问:海外代理的靠谱性
大厂也有这样的做法,远离趋同,方便省事。
需求原因
2.5.5 IPV6网络审核不通过,导致APP无法通过审核;
即便代码支持IPV6,但服务器部署在国内,依然存在网络连接异常问题出现服务器列表无法拉取、充值点击无响应。
当前问题
最高网络API只适用了IPV4而没有支持IPV6,首次拒审后代码支持了IPV6却无真实环境验证;
本地测试环境均为IPV4通道,即便Mac上开启的“IPV6”也只是虚拟环境,访问本地服务器,拒审情况仍不时发生。
需要解决
运维中心:
- 架设海外优质服务器使海外用户(主要苹果审核团队)通过IPV6环境正常注册、登陆、支付;
- 服务器供应商:如Amazon AWS、Google GCP,Microsoft Azure等云供应商;
- 为确保网络连接的稳定性必要时增加域名解析加速处理;
- 海外服务器架设地区:香港、日本、韩国等地。
品管中心:
- 通过抓包等方式验证IPV6通道是否纯正;
- 优化当前iOS APP预审测试之IPV6专项测试的流程。
研发中心:(含CP)
- 原生SDK的架构做IPv4、IPV6组合兼容;
- 所有与网络连接模块有关内容,需做日志埋点及时抓包定位异常问题;
- 所有走网络请求的模块,排查类似192.168.1.1的IP地址更换为对应的域名地址;
- 涉及远程加载的图片放置客户端版本包里做本地加载调用;
- 设计自动监测开关:检测国外网络(非中国大陆区)访问时,不请求远程数据,直接访问本地内容。
注意事项:
- 针对当前公司的iOS版本发行策略规避各项目各马甲包的通过因相同服务器导致关联下架;
- 审核服务器需区分iOS官方包的服务器环境搭建、不同项目ASO包的独立服务器;
- IPV6环境需支持调通各SDK、游戏服(认证服、逻辑服等)、数据库;
- 受当前用户画像在兼容IPV4的基础上做到支持IPV6,以免造成国内用户游戏异常。
苹果官方有关IPV6的文献资料
苹果开发者技术服务热线:400-670-1855