1. 程式人生 > >APP輕鬆通過蘋果IPv6稽核——阿里雲網絡產品級解決方案

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

clipboard.png注:圖片來自蘋果官網

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

機制圖如下圖所示:

clipboard.png

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

適用場景:

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

場景示意圖:

clipboard.png

場景描述:

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

注意:

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

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

推薦產品2:IPv6轉換服務

適用場景:

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

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

場景示意圖:

clipboard.png

clipboard.png

clipboard.png

場景描述:

如上圖所示,不管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,具體可參考蘋果官網。

本文作者:一彈就飛

閱讀原文