1. 程式人生 > >阿裏雲針對蘋果官方ipv6審核的綜合解決方案

阿裏雲針對蘋果官方ipv6審核的綜合解決方案

阿裏雲針對蘋果官方ipv6審核的綜合解決

前言


因業務需求 公司APP需要在ios系統上運行需要改系統ipv6


2016年6月1號之後蘋果應用上傳AppStore審核要求全面支持ipv6,雖然只是一個簡單的審核要求,但卻給中國區的開發者帶來了不小的麻煩,因為眾所周知的原因,國內的IPV6支持的比較差,所以包括ipv6環境測試在內的ipv6適配要求,著實是需要有一套解決方案。這裏都是廢話,下面就自己的解決方案開始做方案介紹。

代碼層支持

按照蘋果官方要求做iOS代碼適配ipv6,這裏涉及到了跟網絡相關的第三方庫的時候,按照我自己的經驗,做如下解釋:

1.Afnetworking ~3.1.0。(3.0.x版本正常都是支持ipv6的)

2.SDWebImage ~3.8.1。

基本的代碼層根據蘋果官方的要求做配置就好。對於socket支持,由於最近上線的項目裏沒有用到socket,需要做socket層支持的自己去蘋果官方查適配ipv6要求。

服務器支持

1.給域名添加一條AAAA解析(當您希望訪問者通過 IPv6地址 訪問您的域名時,可以使用AAAA記錄,即用來指定網站域名對應的IPv6地址記錄),如果是www的域名,則AAAA解析名為www,值為當前域名的ipv6DNS地址。詳情:阿裏萬網IPV6AAAA解析。

2.更改服務器ipv6配置,這裏想說明一下,這次的蘋果強制要求ipv6兼容,阿裏雲無辜背了黑鍋,其實能不能審核通過或者說ipv6環境下阿裏雲能不能訪問跟阿裏雲支不支持ipv6沒有一毛錢關系。用阿裏雲而ipv6審核沒有通過的原因是服務器環境沒有配置ipv6,或者根本就是有的服務器為了節省性能將ipv6直接給禁掉了。所以查看服務器中ipv6的配置,看是否允許ipv6。

此處以阿裏雲為例進行說明:

註意!

首先,到 https://www.tunnelbroker.net/ 註冊一個賬戶,然後登陸,戳 Create Regular Tunnel 。IPv4 Endpoint (Your side) 這裏填你 ECS 的內網 IP 地址, Available Tunnel Servers 這裏選一個,一般來說 HK 離大陸近延遲低,不過最近 HE.net 的香港似乎都是繞了一圈美國回來的,所以延遲反而很高,這個看自己情況選就好。然後戳 Create Tunnel ,就完成了。

技術分享

技術分享

技術分享

之後點擊Create Regular Tunnel 添加自己的內網ip如:65.11.12.13

如圖所示:

1.添加內網地址選項服務:

技術分享

2.點擊創建即可:

技術分享


登錄阿裏雲服務器終端,進入/etc/modprobe.d/ipv6off.conf(不同的服務器這裏命名可能會有差別,可以先到這個目錄看一下跟ipv6相關的配置文件,然後再vim打開)

  1. # vim /etc/modprobe.d/ipv6off.conf 或者

  2. 技術分享

aliasnet-pf-10off 將本行註掉

optionsipv6 disable=1 改為 optionsipv6 disable=0

技術分享

2.# vi /etc/sysconfig/network

NETWORKING_IPV6=no 改為 NETWORKING_IPV6=yes

技術分享

3.# vi /etc/sysconfig/network-scripts/ifcfg-eth0

IPV6INIT=no 改為 IPV6INIT=yes

IPV6_AUTOCONF=no 改為 IPV6_AUTOCONF=yes

技術分享

4以上已經開啟ipv6,所以要進行一下安全設置,設置開機自啟動ipv6防火墻

# chkconfig ip6tables on

至此,ipv6的服務器端支持已經完成,重啟服務器測試ipv6是否已經支持,重啟後:

# lsmod | grep ipv6 如果有輸出則已經支持ipv6

輸入ifconfig查看ipv6的信息

技術分享

# ifconfig | grep -i inet6

技術分享

詳情參考:

阿裏雲:通用 CentOS 服務器安全配置指南

騰訊雲: 在centos服務器上啟用ipv6地址

騰訊:centos操作系統雲主機開啟ipv6方法



本文出自 “李世龍” 博客,謝絕轉載!

阿裏雲針對蘋果官方ipv6審核的綜合解決方案