引言
问题:提交新版 iOS App,由于无法登录,导致被拒。
最终排查原因:服务器的网络策略限制境外IP访问
解决方案:提交xxxAPP到IOS市场审核,期间申请放开国外访问的限制。
I 由于服务器侧的网络安全策略,导致境外IP无法访问
1.1 网络安全策略的背景
目的是避免境外IP可以访问相关交易系统。
每次境外访问的策略开放都意味着可能存在境外交易、网络安全的风险。
1.2 解决方案
上架前,先和运维部门申请淘APP在IOS应用市场审核支持
xxx子公司将于5月13号下午提交APP到IOS市场审核,期间申请放开国外访问的限制(放开时计算,预计需要3个工作日),允许通过IPv6网络访问(不限于美国,其他国家也能访问),避免APP在IOS应用市场审核失败,望领导审批,谢谢!
上架备注:由于服务器侧的网络安全策略,推荐使用中国境内IP进行测试
登录失败,审核被拒绝回复:您好,亲爱的苹果审核团队,由于我们服务器的原因导致无法登录,现已修复请重新审核。非常感谢!
1.3 境外是否能访问的测试方法
自己开启V_P_N进行测试,是否开通成功。
通常网络层不针对某个单一域名进行限制的,如果机房部署的其他项目可以审核通过,可以采取其他维度的交叉验证。
比如:
- 提交测试域名给苹果审核,判断是不是生产的网络策略导致的。
- 搭建IPV6网络环境验证是否可以正常登录
苹果审核要求,iOS设备需在ipv6网络环境下正常运行。
II IPv6解决方案
2.1 方案一 :审核时临时添加一条4A记录
审核时临时添加一条4A记录
- 价格参考:
- 一次性299,审核时有效,包过。(下次申请需要重新交钱)
大部分通过之后就没问题了,并非每次都会检查,少部分可能每次都有问题
- 包月就是当月不限次数,V6地址一直有效;包月499。
- 包年3999,包年85折;不限次数,不限制IP。
- 一次性299,审核时有效,包过。(下次申请需要重新交钱)
2.2 方案二:接入 IPv6隧道
在国内服务器上免费接入HE tunnel IPv6隧道
- 注册 HE tunnel IPv6隧道:
- 创建 IPv6 通道
- 配置 ECS 使其支持 IPv6
- 在Example Configurations (https://tunnelbroker.net/tunnel_detail.php?tid=394665#tabs-2)在select your os的下拉菜单中选择你用的操作系统,生成对应的示例脚本
- 重启后使用 ifup he-ipv6 确认隧道启动
- 使用 ping6 来测试配置是否正确
- 配置 Nginx 使其监听 IPv6 端口
- 配置 DNS 使其支持 IPv6 解析
2.3 方案三:服务器支持IPV6
2.4 验证(mac搭建IPV6网络环境)
- 确保mac是连网线
- 在系统设置中,找到“共享”,按住option键时点击共享按钮进入界面,会出现“创建NAT 64网络”的勾选框:
在这里插入图片描述
2.5 如果以上都无法解决,可以试试这个
跟运维安全部门进一步交流,看是不是没有放开国外访问这个域名的限制,看下是否允许通过IPv6网络访问这个域名。
代码语言:javascript复制
x董、x总,您好:
x x x子公司将于8月11号早上提交xxxAPP到IOS市场审核,期间申请放开国外访问xxx的限制(放开时计算,预计需要3个工作日),允许通过IPv6网络访问xxx(不限于美国,其他国家也能访问),避免APP在IOS应用市场审核失败,望领导审批,谢谢!