ios之如何適配ipv6

We discovered one or more bugs in your app when reviewed on iPad running iOS 10.0and iPhone running iOS 10.0 on both Wi-Fi connect to ipv6.

第一步:測試客戶端是否能夠在ipv6下運行


首先得配置IPv6網(wǎng)絡(luò)環(huán)境,至于如何配置,自行百度"如何搭建IPv6的測試環(huán)境"。

然而配置成功后,用手機(jī)連接的WiFi DNS也是正確的,運行程序測試怎么不成功呢,找了好多資料,猜測是DNS解析除了問題。

那就換另一種方法配置IPv6:拔掉網(wǎng)線,用mac連接WiFi(沒有WiFi可以用手機(jī)流量分享熱點),然后在共享中用前一種方法配置IPv6(不知道具體是共享到電腦那個端口,索性全點上),記得選中"創(chuàng)建NAT64 網(wǎng)絡(luò)"。這時直接通過模擬器測試succeed!

測試成功了。你以為就沒問題了?這里提交依然可能被拒,手機(jī)和 Mac 之間是 IPv6 沒錯,但 Mac 和你的服務(wù)器之間還是 IPv4 連接。

第二步:測試服務(wù)器是否能夠支持ipv6


如果這項測試通過,可以說明:你的客戶端應(yīng)用在 IPv6 網(wǎng)絡(luò)下,是(基本)沒有問題的,但是無法驗證你的服務(wù)器能夠?qū)?IPv6 網(wǎng)絡(luò)做出正確的響應(yīng)。然而,蘋果審核的時候,卻是要去 DNS 服務(wù)器詢問你的服務(wù)器的 IPv6 地址,然后進(jìn)行訪問。如果查詢不到 IPv6 地址,可能會進(jìn)而詢問 IPv4 地址,然后進(jìn)行轉(zhuǎn)換使用。蘋果明確表示服務(wù)器不需要支持 IPv6,但是有一點蘋果沒有指出來,那就是,雖然你的服務(wù)器不用支持 IPv6,但是必須正確響應(yīng) IPv6 的 DNS 查詢。

如何驗證呢??使用以下命令即可:

$ dig +nocmd +nostats example.com AAAA

如果返回的 status 為 NOERROR, 那基本就沒什么問題,但是一定要在多個網(wǎng)絡(luò)環(huán)境下測試都通過才行。如果返回的是其他的響應(yīng),尤其是 SERVFAIL 的情況,那就基本杯具了。由于你已經(jīng)驗證了客戶端沒有問題,現(xiàn)在要做的,就是催著你的運維、后臺啥的,趕緊去改 DNS 配置,直到穩(wěn)定返回 NOERROR 為止。


第三步:蘋果的服務(wù)器是否能夠訪問我們的ip地址


現(xiàn)在很多人碰到的情況就是客戶端可以完成ipv6的訪問,服務(wù)器本身也可以支持ipv6.但是就審核不通過。發(fā)生這樣的情況很可能是蘋果那邊的服務(wù)器無法訪問你的ip地址。打個比方就好像歪果仁要來中國旅游需要辦簽證,而中國就不給辦理。 解決辦法就是,通過將通過一個代理隧道將你的ipv4連接到ipv6Internet地址,當(dāng)然你得先擁有支持IPv6的主機(jī)或者連接ipv4的路由。根據(jù)后臺的說法,先去我們用的是教育網(wǎng),后面切換到了一個香港的公司。因為不是很了解,我就不班門弄斧了。不過通過這樣的操作我們確實通過了ipv6的審核。

最后,留下一個地址,祝您好運!如果能幫助您別忘點贊~https://www.tunnelbroker.net/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容