IPv6 能打开网站,却连不上某个服务?一份检查清单
IPv6 是否可用,不是一个简单的开关。客户端、路由器、运营商、服务器和应用都要支持,任何一环缺失都可能造成“有地址但连不上”。
有 IPv6 地址,不等于有公网连接
链路本地地址通常以 fe80 开头,只用于本地链路;它不能证明公网 IPv6 已经连通。应同时检查默认路由,并实际访问一个支持 IPv6 的站点。
分别测试 IPv4 和 IPv6
使用 curl -4 -I https://example.com 与 curl -6 -I https://example.com 可以区分两条路径。不要只用浏览器判断,因为浏览器可能自动回退到 IPv4,让故障暂时不可见。
检查服务监听与防火墙
服务器有 IPv6 地址,不代表应用监听 IPv6。检查 ss -lntp 中的地址与端口,同时查看云平台和系统的 IPv6 入站规则。IPv4 的放行规则不一定覆盖 IPv6。
地址与端口的书写
URL 中直接使用 IPv6 地址时,需要方括号消除冒号歧义,例如 https://[2001:db8::1]:8443/。这里的地址属于文档示例网段,不能拿来连接真实服务。
AAAA 记录要与可用服务匹配
域名的 AAAA 记录告诉客户端尝试 IPv6。如果服务器没有正确监听或防火墙未放行,贸然添加 AAAA 会让一部分访客访问变慢甚至失败。
IPv6 的好处是扩大地址空间和提供另一条网络路径,不是天然更快。是否保留它,应以实际延迟、稳定性和客户端覆盖情况为准。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 SkynetX!