开发者社区> 一弹就飞> 正文

APP轻松通过苹果IPv6审核——阿里云网络产品级解决方案

简介:
+关注继续查看

背景

2016年初起,苹果要求上架iOS App Store的应用要兼容IPv6。这个决定虐惨了中国大陆的App开发者。随便打开一个开发者论坛,都可以看到各种关于App如何通过苹果IPv6审核的求助贴。

针对这一问题,下面将为大家推荐阿里云产品级的解决方案,希望可以助力开发者快速完成苹果AppStore审核。

苹果Store的APP IPv6审核机制

在开始产品级的解决方案前,再老生常谈的介绍一下苹果AppStore的审核机制。

苹果AppStore在美国的IPv6-only环境下对APP进行访问。如果APP服务器支持IPv6,则可通过IPv6网络直接访问。如果APP服务器不支持IPv6,则IPv4 APP服务器的IPv4地址将通过DNS64合成为IPv6地址返回给美国的IPv6-only客户端,IPv6-only客户端再通过NAT64网关将访问数据包中的目的IP(即DNS64合成的IPv6地址)转换为IPv4地址,进而对APP服务器进行访问。

苹果Store的APP IPv6审核机制如下图所示:

topo

注:图片来自苹果官网

作为中国大陆的开发者,APP服务器几乎都只有IPv4地址,因此在提交APP到苹果进行审核时都需要走DNS64/NAT64这条路径。但遗憾的是,DNS64/NAT64这条路径经常会因跨国网络问题和不可描述的屏蔽等原因,国内APP服务器的IPv4地址无法通过DNS64合成IPv6地址,即使成功合成IPv6地址,苹果AppStore也有可能无法成功访问位于国内的IPv4 APP服务器。

因此,这里建议App开发者提交APP审核时,应避免美国苹果IPv6-only的访问流量走DNS64/NAT64这条路径。

阿里云产品级解决方案

方案概述


阿里云负载均衡IPv6实例或者IPv6转换服挂载IPv4 APP服务器,这样当苹果AppStore发起审核时,来自美国苹果公司IPv6-only客户端的IPv6流量先访问阿里云负载均衡IPv6实例或者IPv6转换服务,然后阿里云负载均衡IPv6实例或者IPv6转换服务完成IPv6到IPv4的转换,将转换后的数据包转发至IPv4 APP服务器上。

机制图如下图所示:

topo

推荐产品1:负载均衡IPv6实例


适用场景:

IPv4 APP业务运行在阿里云上,且IPv4 APP服务器和阿里云负载均衡IPv6实例必须位于同一区域

场景示意图:

topo

场景描述:

如上图所示,苹果发起审核时,阿里云负载均衡IPv6实例将来自苹果IPv6-only的访问流量根据转发策略分发到后端IPv4 App服务器上。

注意:

  1. 阿里云负载均衡IPv6实例与后端 IPv4 APP服务器通过IPv4私网进行通信,因为IPv4 APP服务器和阿里云负载均衡IPv6实例需位于同一个区域。
  2. 完成负载均衡IPv6实例的配置后,建议您为APP的域名添加AAAA记录解析,即将APP域名解析到阿里云负载均衡IPv6实例的IPv6地址上。>>如何设置>>

负载均衡IPv6实例目前支持公共云华东1(杭州)、华北2(北京),其他区域也即将支持,请关注阿里云官网。

推荐产品2:IPv6转换服务


适用场景:

IPv4 APP业务可以部署在本地IDC机房、阿里云、或者其他云服务商上,只要APP业务服务器具备公网IPv4地址,都可以使用阿里云IPv6转换服务。

IPv6转换服务和IPv4 APP服务器可以在同一区域,也可以不在同一区域。

场景示意图:

topo

topo

topo

场景描述:

如上图所示,不管IPv4 APP服务器是部署在本地数据中心、阿里云或在其他云上,当苹果AppStore发起审核时,阿里云IPv6转换实例根据用户配置的IPv6到IPv4的转换规则,将来自美国苹果公司IPv6-only客户端的访问流量转发到后端IPv4 App服务器上。

注意:

  1. IPv6转换服务与后端挂载的IPv4业务是通过IPv4公网来进行通信,因此后端的IPv4业务必须具备一个公网IPv4地址。
  2. 完成IPv6转换服务的配置后,建议您为APP的域名添加AAAA记录解析,即将APP域名解析到IPv6转换服务实例的IPv6地址上。>>如何设置>>
  3. 如果您的APP域名从未在阿里云进行过备案,那么您还需要为APP域名完成阿里云的接入备案流程。>>进入备案系统>>

IPv6转换服务实例可选择公共云华东1(杭州)、华北2(北京),其他区域也即将支持,请关注阿里云官网。

重要的提醒


为避免因跨国网络问题和不可描述的屏蔽原因导致的DNS无法解析APP域名的IP地址,推荐上述2款产品搭配阿里云云解析企业版共同使用。阿里云云解析具有海外DNS BGP节点,可以确保苹果AppStore在做IPv6审核时,查询DNS时可以正确返回域名的IP地址。

结语

本文只做苹果AppStore审核APP IPv6时候的网络连接方面的产品推荐,如果要APP通过IPv6的审核,还需要APP(代码)本身兼容IPv6,具体可参考苹果官网

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
IPv6兼容解决方案
原作者:阿里云飞天解决方案架构师,韩虎。 苹果在WWDC2015宣布iOS9支持纯IPv6的网络服务,为了更快过审你应该怎么做?阿里云是否支持IPv6?在什么场景下会有问题?是否需要阿里云公网地址及相关服务立即支持IPV6?有什么过渡方式?这些就是本文要回答的问题。
11898 0
1分钟构建API网关日志解决方案
访问日志(Acccess Log)是由web服务生成的日志,每一次api请求都对应一条访问记录,内容包括调用者IP、请求的URL、响应延迟、返回状态码、请求和响应字节数等重要信息。 阿里云API网关提供API托管服务,在微服务聚合、前后端分离、系统集成上为用户便利的产品。
8124 0
发布一个开源的c++网络事件库【转载Zark@cppthinker.com】
Chaos是一个基于Linux平台, reactor模式的网络事件库, 目前仅支持TCP传输协议, 仅在x86_64下编译, 并遵循3-clause BSD开源协议. 在使用上, 可以说它很像boost asio, 可能是由于我对boost asio的接口设计很有爱吧, 而且对于boost asio...
971 0
+关注
一弹就飞
阿里云网络产品
15
文章
0
问答
来源圈子
更多
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载