DNS 泄漏怎么检测和修复?开启代理后 DNS 仍走本地的解决方法
DNS 泄漏怎么检测和修复?本文讲清 DNS 泄漏检测页面和命令行结果怎么看,列出只开系统代理、浏览器安全 DNS、IPv6 未接管、多网卡并行查询、配置被订阅覆盖等常见泄漏原因,并给出 TUN 模式、DNS 劫持、Fake-IP 与浏览器设置的逐项修复步骤和复测方法。
简要回答 DNS 泄漏是指开了代理后,部分域名查询仍然直接发给本地运营商或其他未经代理的 DNS 服务器。用 DNS 泄漏检测页面看结果中是否出现本地运营商服务器即可判断;修复的关键是开启 TUN 模式并劫持 DNS、使用 Fake-IP、关闭浏览器自带的安全 DNS 或让它跟随系统,并处理好 IPv6。
检测 DNS 泄漏最简单的方法,是在开启代理后打开 DNS 泄漏检测类网页,看结果列出的 DNS 服务器里有没有本地运营商。如果有,说明部分查询绕过了代理。修复的核心是让客户端接管所有 DNS 查询:开启 TUN 模式并劫持 DNS、使用 Fake-IP,再处理浏览器安全 DNS 和 IPv6。DNS 污染、解析失败等其他问题请看 DNS 问题解决指南,本文只聚焦泄漏。
问题现象
- 泄漏检测页面显示的 DNS 服务器归属本地运营商或本地城市。
- 出口 IP 在海外,但 DNS 服务器在国内,两者地区不一致。
- 开启代理后网页能打开,但 AI 服务偶尔提示地区异常。
- 修改配置后检测结果时好时坏,重启电脑又恢复泄漏。
可能原因
| 原因 | 说明 | 常见场景 |
|---|---|---|
| 只开了系统代理 | 不读代理设置的程序会自己解析域名 | 桌面客户端默认模式 |
| 浏览器安全 DNS | 浏览器绕过系统直接用自定义 DoH | 安全 DNS 指向了其他服务商 |
| IPv6 未接管 | AAAA 查询或 IPv6 连接绕过代理 | 宽带已分配 IPv6 地址 |
| 多网卡并行查询 | 系统同时向多个网卡的 DNS 发请求 | Windows 下 TUN 与物理网卡并存 |
| redir-host 模式 | 本地先发出真实查询 | 为兼容性改了增强模式 |
| 订阅覆盖 DNS 配置 | 更新订阅后自定义设置失效 | 未使用 DNS 覆写 |
快速检查
- 保持代理开启,用浏览器打开任意 DNS 泄漏检测页面,选择扩展测试。
- 记录结果中 DNS 服务器的归属,与出口 IP 所在地区对比。
- 用浏览器无痕窗口再测一次,排除扩展影响。
- 切换到 TUN 模式后重复测试,对比前后结果。
命令行也可以辅助查看当前实际发出查询的解析器,下面的域名会返回向它发起查询的 DNS 服务器地址:
nslookup whoami.akamai.net
详细排查
确认浏览器的安全 DNS 设置
Chrome、Edge 在“隐私和安全”中有“使用安全 DNS”,Firefox 在网络设置中有 DNS over HTTPS 选项,具体菜单以当前版本为准。如果这里手动指定了某个服务商,浏览器会绕过客户端直接查询。排查时先改为关闭或“跟随系统”。
检查 IPv6
在系统网络详情中查看是否有公网 IPv6 地址。如果有,而客户端没有接管 IPv6,就可能出现泄漏。IPv4 与 IPv6 的区别见 IPv4 与 IPv6 的区别。
检查客户端 DNS 配置
打开客户端的配置查看或 DNS 覆写页面,确认 DNS 已启用、增强模式为 fake-ip,并在 TUN 设置中开启 DNS 劫持。Fake-IP 与 redir-host 的差别见 Fake-IP 与 redir-host 怎么选。
解决方法
- 开启 TUN 模式:它能在网卡层面接管所有程序的流量和 DNS 查询,是解决泄漏最有效的方法,设置步骤见 Clash Verge TUN 模式教程。
- 开启 DNS 劫持并使用 Fake-IP:以 Mihomo 内核为例,可参考下面的片段,通过客户端的 DNS 覆写功能写入:
tun:
enable: true
stack: mixed
auto-route: true
dns-hijack:
- any:53
dns:
enable: true
ipv6: false
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
- 浏览器安全 DNS 改为跟随系统,或直接关闭。
- 没有 IPv6 需求时在客户端中关闭 IPv6,或确保 TUN 同时接管 IPv6。
- 用覆写而不是直接改订阅,避免更新订阅后设置被还原。
仍然无法解决怎么办
- 检查是否同时运行了其他 VPN、加速器或安全软件的“网络保护”功能,它们可能自行接管 DNS。
- 如果 AI 服务仍提示地区问题,继续参考 Region Not Supported 解决方法。
- 在另一台设备导入同一订阅测试,判断是否是本机设置问题。
请在遵守所在地法律法规和服务条款的前提下使用代理工具。更多解析相关问题见 DNS 问题专题。
常见问题
检测结果里同时有海外和国内 DNS 服务器,算泄漏吗?
要看分流设计。国内域名本就走国内 DNS 时,出现国内服务器是正常的;但检测页面使用的是海外测试域名,如果这些查询出现本地运营商服务器,就说明存在泄漏。
DNS 泄漏会影响 ChatGPT、Claude 等 AI 服务吗?
可能会。部分服务会综合出口 IP、DNS 等信号判断访问环境,泄漏不一定直接导致无法使用,但会增加地区判断不一致的可能。
只用系统代理能完全避免 DNS 泄漏吗?
很难。系统代理只对主动读取代理设置的程序生效,其余程序仍会用系统 DNS 自行解析。要全面接管,通常需要开启 TUN 模式。