SIFT / KNOWLEDGE BASE

知识 Wiki 总览 / VPN

DNS与IPv6泄露

更新于 2026-11-07条目链接

DNS 或 IPv6 泄露是指原本预期由 VPN 承载的查询或流量,实际经本地网络或其他接口发送。常见原因包括隧道只配置 IPv4、DNS 解析器仍指向本地网络、路由前缀配置不完整,或浏览器使用独立 DoH 服务绕过系统解析器。

检查范围

  • 查看 VPN 接口和系统是否同时配置 IPv4、IPv6 地址与路由。
  • 查看 DNS 服务器是否为预期解析器,并确认到它的目标路由进入隧道。
  • 确认浏览器的安全 DNS、DoH 或其他代理策略与 VPN DNS 策略一致。
  • 将 VPN 断开、重连和网络切换分别纳入测试,检查策略在状态变化后是否保持。

跨平台检查命令

Windows

Get-NetRoute -AddressFamily IPv6
Get-DnsClientServerAddress -AddressFamily IPv6
Resolve-DnsName example.com -Type AAAA

macOS

route -n get -inet6 default
scutil --dns
dig AAAA example.com

Linux

ip -6 route
resolvectl status
resolvectl query example.com

这些命令显示系统配置和解析结果,不能单独证明整个会话不存在泄露。强验证还需要在物理接口和隧道接口分别抓包,并结合 DNS 服务端日志和 VPN 提供方的路由策略。

修复原则

为 IPv6 建立完整隧道路由和服务端支持;在无法提供 IPv6 隧道时,按经过验证的客户端策略阻止 IPv6 绕行;将 DNS 服务器和分流域名绑定到正确接口;统一系统与浏览器的加密 DNS 设置。不要只凭一个公开“泄露测试”网页作出安全结论。

参考资料

RFC 8200:IPv6 规范;OpenVPN 2.6 手册:IPv6 路由与阻断选项;RFC 8484:DNS over HTTPS;Microsoft Learn:DNS 接口配置检查。