app 要支持ipv6,要保证客户端使用的网络库,都支持ipv6协议,然后请求都使用域名。域名解析AAAA记录到支持ipv6 的服务器上,绑定ipv6地址。
阿里云轻量服务器不支持ipv6, 需要购买ecs,然后配置vpc和交换机支持ipv6 即可。
配置完成后,使用dig 命令测试解析。如果支持ipv6 会打印ip, 否则打印空。
dig api5-normal-lq.toutiaoapi.com AAAA | grep -w AAAA | grep -oE '[0-9a-fA-F]{1,4}(:[0-9a-fA-F]{1,4}){7}'
文章:网站开启ipv6
开启后可以先用https://www.boce.com/ipv6/ 检测一下各个环节是否生效,有时候还需要再云服务器网络安全组中打开端口白名单,ipv6 和v4是分开控制的。
测试
测试的时候需要注意的要点
- 测试平台包括:IOS,Android,Web平台的项目
- 测试的IP范围包括:纯IPV4,纯IPV6,和IPV4 + IPV6混合
- 一般不是所有的域名都更换成IPv4了,最好测前梳理下需要测试的域名和功能
- 发现问题时,需要确定它到底是一个和IP有关的问题,还是和IP无关的纯业务的bug
Android/IOS/MAC的测试总结
- 关于如何测试这一点,网上的资料并不太靠谱,就因为那些教程,我已经吃了大亏了
- 手机很多都不允许,或者说不推荐修改默认运营商的APN接入点,所以我们应该新建APN接入点来使用IPv6
Android端测试IPV6的方法
(注意⚠️,网上说的那种直接修改默认运营商的APN的方法,可能造成问题,而且很多手机也不允许修改默认的APN)
方法如下
1.点击 移动网络2. 点击接入点名称(APN)3. 选择新建APN4. 新建APN的时候,只要选好IPv6就可以了,其他的随便填一下,可以参考默认的运营商的APN配置5.设置默认APN为你这个新建的APN
6.用这个安卓手机启动流量,开始测试(不要连接WIFI)
IOS端测试IPv6的方法
不要看网上的,网上的全是错的,既复杂,又错误
1. 首先要做的是根据上文的Android的测试方式开启 IPv6
2. 用手机开启热点,变成WiFi给苹果手机连接,苹果手机就能连带使用IPv6了
3. 验证是否启动IPV6成功了(毕竟可能会担心是不是启动成功了)
请看
(只启动IPv4的苹果手机的WIFI点开后是这个样子的)(启动IPv6后,WIFI点开来变成下面这样子)MAC端测试IPV6的方法
不要看网上的,网上的全是错的,其实还是上面介绍的老办法,在你的Android手机上开启IPv6, 然后用手机开启热点,再然后,用MAC连接热点,就OK了,然后就可以打开你项目的网站进行测试了
如何判断连接IPV6连接成功了??
依此点击 : 系统偏好设置 => 网络 => 高级 => TCP/IP。
可以看到下面这些