關于iOS IPV6審核不通過

說明好不是照著我的話做就能解決問題,而是去找到自己不通過的原因所在。

列舉被打回來的情況和大致的原因、其他情況介紹

1. 用的是IP

因為你用了ipv4地址,代碼就強制走了V4協議,純6環境是無法訪問的,除了接口的請求要換成域名,那些以圖片或者媒體為主的app,也要注意把資源的url換成域名。

2. 代碼不支持V6

代碼不支持的問題,就盡更新庫之類的,如果是用的系統的請求,恭喜你,蘋果在底層都已經處理好了。但是有些不是代碼不支持而是有些判斷出錯的,比如AFNET的網絡監測里面有段代碼就出了問題,我不用AFNET所以無法粘貼出來,用的人自己留神下。還有其他sdk庫,我不列舉,你們自己用到哪個,自己去官網找更新,提醒下gcdsocket也有更新,自己去gitbub下載下。

3. 本地搭建nat64測試

1) 這個環境搭建的要測試通過,這是最基本的要求。搭建流程百度很容易找到。

2) 建議大家用wireshark抓包看看,確定下客戶端會不會是用了ipv4進行了訪問。不知道可不可行。

4. 蘋果那邊訪問不了

這個種情況一定要確定上面的步驟完成了,然后到蘋果那邊還是不行的話,這可能是你的域名提供商、你的服務器訪問不穩定造成的,你可以像你的域名、服務器運營商申訴:Our app works on DNS64/NAT64 environment . please help check again.?

當然是基本沒用,這世界上的人都一樣,你別人能過,為什么你不能過,肯定不是我的問題,沒人會幫你的。

------------------------------------------------------------------

大部分人,基本上解決了以上,都不會出現問題,如果你真的因為IPV6審核通過不了,找運營商也會跟你統一回復:“不關我的事”,這時候你們肯定都沒轍了,我寫以下的,只是給那些沒有過的人看,你們沒處理過以下情況的人過了,就當看不見就可以了,特別是那些運營商的人更要當看不見。我清楚的記得好幾個別打回N次,然后通過下面這個方法終于審核通過了

5. DNS AAAA記錄

我不是理論派,簡單看了下NAT64/DNS64原理,在這個這個技術下,查詢域名信息中的A記錄(IPv4地址)合成到AAAA記錄(IPv6地址)中,返回合成的AAAA記錄用戶給IPv6客戶端用戶訪問,而審核不過,也可能是因為這個V6地址在蘋果那邊訪問不了。

我們想辦法讓這個AAAA記錄能夠穩定訪問,這里我們需要一些DNS服務商的幫助,幫我們直接生成一個ipv6的訪問地址,手動添加到AAAA記錄中。其實原理就是,本來是通過蘋果的NAT64/DNS64生成的地址,現在換成了用DNS服務商的NAT64/DNS64生成,也讓蘋果訪問的時候看起來像一個真的V6地址一樣。

1) DNSPOD,這是一個被打回來的網友,然后使用這個服務后審核通過了,解決鏈接,如果看不懂的,可以自己網上找一下教程。

2) GODADDY 也是上面的網友提供的,但是使用它被打回來的,供參考

3) 6BOX,付費的,很貴。

6. 如何測試服務器的網絡已經支持IPV6,

只有做了步驟5才可以且需要做這個操作做校驗,沒手動添加dns aaaa的是不需要這些操作的,確保這個地址的訪問的穩定性。

通過網站 http://ipv6-test.com/validate.php 檢測域名的V6訪問是否正常,第一個打勾代表dns正常,第二個打勾,需要服務器80端口或者443端口沒被禁用,只有你操作了步驟5,這個才能操作才能正常。

或者 http://www.subnetonline.com/pages/ipv6-network-tools/online-ipv6-ping.php,根據頁面打印數據查看延遲,會不會丟包。

7. 服務端主動發數據給客戶端

這種情況,不是指socket回發數據給客戶端,指的是服務端記錄客戶端的ip地址端口后,主動發數據給客戶端,因為NAT64/DNS64 是單向的,只能IPV6訪問IPV4,所以這個過程就會失敗,其實這個過程服務端也變成是客戶端的角色了,如果有這種情況,我也不知道怎么辦。除非你有真實的IPV6地址。

------------------------------------------------------------------

這是大部分小企業的解決方案,如果你們服務器網絡有真實的IPV6地址的話,就不需要考慮這些了。

------------------------------------------------------------------

很多沒有加AAAA已經過了的人,他們看到別人加AAAA,就會莫名給對方套上煞筆稱號,你不過就肯定是你代碼問題之類的,其實導致他們會有這種想法主要的原因是因為很多服務商用DNS AAAA宰開發者的錢,因為他們有正義感,所以他們反感。

我相信不過的大部分人已經做好了1+2,本來這個客戶端需要做的就沒多少,也沒技術難點,基本上更新庫就好了,我個人覺得,如果真的過不了,加個穩定的AAAA,至少確保下蘋果訪問時是穩定的,再去找其他問題的存在。有好幾個人是通過添加穩定的AAAA記錄后,才成功通過審核的,這間接證明,有這么一群人他們的域名在蘋果那通過NAT64/DNS64就是訪問不了,僅供參考。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容