APP輕鬆通過蘋果IPv6審核——阿里雲網路產品級解決方案

來自專欄我是程序員6 人贊了文章

背景

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審核機制如下圖所示:

註:圖片來自蘋果官網

作為中國大陸的開發者,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伺服器上。

機製圖如下圖所示:

推薦產品1:負載均衡IPv6實例

適用場景:

IPv4 APP業務運行在阿里雲上,且IPv4 APP伺服器和阿里雲負載均衡IPv6實例必須位於同一區域

場景示意圖:

場景描述:

如上圖所示,蘋果發起審核時,阿里雲負載均衡IPv6實例將來自蘋果IPv6-only的訪問流量根據轉發策略分發到後端IPv4 App伺服器上。

注意:

阿里雲負載均衡IPv6實例與後端 IPv4 APP伺服器通過IPv4私網進行通信,因為IPv4 APP伺服器和阿里雲負載均衡IPv6實例需位於同一個區域。完成負載均衡IPv6實例的配置後,建議您為APP的域名添加AAAA記錄解析,即將APP域名解析到阿里雲負載均衡IPv6實例的IPv6地址上。>>如何設置>>

負載均衡IPv6實例目前支持公共雲華東1(杭州)、華北2(北京),其他區域也即將支持,請關注阿里雲官網。

推薦產品2:IPv6轉換服務

適用場景:

IPv4 APP業務可以部署在本地IDC機房、阿里雲、或者其他雲服務商上,只要APP業務伺服器具備公網IPv4地址,都可以使用阿里雲IPv6轉換服務。

IPv6轉換服務和IPv4 APP伺服器可以在同一區域,也可以不在同一區域。

場景示意圖:

場景描述:

如上圖所示,不管IPv4 APP伺服器是部署在本地數據中心、阿里雲或在其他雲上,當蘋果AppStore發起審核時,阿里雲IPv6轉換實例根據用戶配置的IPv6到IPv4的轉換規則,將來自美國蘋果公司IPv6-only客戶端的訪問流量轉發到後端IPv4 App伺服器上。

注意:

IPv6轉換服務與後端掛載的IPv4業務是通過IPv4公網來進行通信,因此後端的IPv4業務必須具備一個公網IPv4地址。完成IPv6轉換服務的配置後,建議您為APP的域名添加AAAA記錄解析,即將APP域名解析到IPv6轉換服務實例的IPv6地址上。>>如何設置>>如果您的APP域名從未在阿里雲進行過備案,那麼您還需要為APP域名完成阿里雲的接入備案流程。>>進入備案系統>>

IPv6轉換服務實例可選擇公共雲華東1(杭州)、華北2(北京),其他區域也即將支持,請關注阿里雲官網。

重要的提醒

為避免因跨國網路問題和不可描述的屏蔽原因導致的DNS無法解析APP域名的IP地址,推薦上述2款產品搭配阿里云云解析企業版共同使用。阿里云云解析具有海外DNS BGP節點,可以確保蘋果AppStore在做IPv6審核時,查詢DNS時可以正確返回域名的IP地址。

結語

本文只做蘋果AppStore審核APP IPv6時候的網路連接方面的產品推薦,如果要APP通過IPv6的審核,還需要APP(代碼)本身兼容IPv6,具體可參考蘋果官網。

本文作者:一彈就飛

原文鏈接

更多技術乾貨敬請關注云棲社區知乎機構號:阿里云云棲社區 - 知乎

本文為雲棲社區原創內容,未經允許不得轉載。


推薦閱讀:
相关文章