关于iOS适配IPv6的方法

如果你的项目的网络请求是用的域名的话~可以跳过这个文章了。


如果你处于ipv6的网络下,发现你的app用不了那么你就需要做以下适配了
但是苹果已经对iOS9以上的系统做了适配,但是对于socket还是需要自己动手

关于ipv6的介绍

其实适配ipv6 就是判断当前网络是否处于ipv6的网络状态下 如果是的话就把ipv4的地址转换成ipv6的地址,这样就可以了.

假如我们的ipv4地址是 10.0.0.1 那么转换成ipv6就是 ::0A00:0001
转换方法如下
10.0.0.1 转换成16进制就是 0A.00.00.01
因为ipv6的分隔符是 : 而且ipv6是128位 所以变成了 ::0A00:0001 :: 表示前面96位都是0

这样我们得到了ipv6的地址 但是你会发现用不了这里就需要在地址前面加上64:FF9B 所以完整的地址是 64:FF9B::0A00:0001

ipv6 的 http url 格式跟 ipv4 的 http url格式有所不同需要注意
假如 ipv4 的 http url 是 http://10.0.0.1:8100/xxx.html
那么 ipv6 就是 http://[64:FF9B::0A00:0001]:8100/xxx.html
这里有详细的 ipv6 url 介绍

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容