如何确认域名支持 IPv6:看 AAAA 还是直接测
这个问题看起来简单,但很多人只做了第一步就下了结论。
第一步:查 AAAA 记录
用 DNS 查询工具,记录类型选 AAAA,填域名。
有记录,说明域名能解析出 IPv6 地址。没有记录,说明 IPv6 用户连地址都拿不到,后面的都不用谈。
这一步只能证明“解析配了”。它不证明地址后面有服务,也不证明防火墙放行。
第二步:直接测端口
用 IPv6 TCPing 对域名的 443 端口发起握手。
握手成功,说明地址可达、端口在监听、路径放行。这三件事同时成立,才算真的支持。
失败的话,看失败类型:拒绝是服务没监听 IPv6,超时是防火墙没放行。两种问题的处理方式完全不同。
第三步:看应用层
端口通,不代表网站能用。
用 IPv6 网站测速看状态码和分段耗时。能拿到 200,说明整条链路和应用都正常。返回 502 或超时,问题在应用层或后端。
三层都过,再对外说支持 IPv6。
用了 CDN 的情况
CDN 开启 IPv6 后,用户侧能解析到 CDN 的 IPv6 地址,TCPing 也能通。
但这不代表源站支持 IPv6。回源可能还是 IPv4,源站没有 IPv6 也不影响用户访问。
判断标准要看你问的是哪个问题:用户能不能访问,测 CDN;源站是否支持,得直接测源站地址。
一个常见的误判
AAAA 记录存在,就宣布支持 IPv6。
结果纯 IPv6 用户打不开,排查半天发现服务只监听了 IPv4。
记录、端口、应用,三层缺一不可。只用一层下结论,很容易在关键时刻翻车。