GLaDOS Network

Clash Verge Rev DNS 泄漏怎么检查?按对照测试定位原因

更新于 2026-11-02 · glados.lat

简答:先关闭 Clash Verge Rev 记录一次基线,再分别开启系统代理和 TUN,在同一浏览器中运行 DNS 检测。若结果出现本地运营商或路由器 DNS,再检查 DNS Hijack、IPv6、浏览器 Secure DNS 和运行配置;只看到 Cloudflare、Google 等公共解析器,不能单独证明没有泄漏。

定义:DNS 泄漏是指设备的域名解析请求没有按预期进入 Clash Verge Rev 或指定解析路径,而是被系统、路由器、浏览器或其他网络组件直接送往另一个解析器。

先做 5 分钟速查:固定条件再对照测试

本文是第三方使用指南,不代表客户端项目方。排查前请固定同一网络、同一浏览器、同一检测页面和同一配置,记录每次测试的时间、代理模式、节点名称、检测到的解析器名称与所在网络。不要把订阅链接、节点密码、个人公网 IP 或完整日志公开。

检测结果与下一步
现象初步判断下一步
关闭代理和开启代理都显示同一组本地解析器可能是系统、路由器或网络强制解析继续做 TUN 对照,并检查系统 DNS 与 IPv6
系统代理有变化,TUN 没有变化应用流量与全局流量的接管范围不同检查 TUN、DNS Hijack、Strict Route 或 Auto Redirect
只出现公共 DNS,不出现本地运营商名称不能据此断定无泄漏结合 Connections、运行配置和日志复核
IPv4 正常,但检测页面出现 IPv6 或本地网络信息可能存在 IPv6、WebRTC 或浏览器路径差异分别测试 IPv6 与 WebRTC,不要混称为 DNS 泄漏
  1. 关闭系统代理和 TUN,打开 BrowserLeaks DNS 检测或 DNS leak test,保存基线结果。
  2. 只开启 Clash Verge Rev 的 System Proxy,保持同一浏览器和节点,重新运行完整检测。
  3. 关闭 System Proxy,只开启 TUN Mode,再次检测。
  4. 每次测试之间刷新页面或重新运行测试,并记录解析器名称、网络归属和是否出现 IPv6。

BrowserLeaks 说明其测试会通过多组随机域名观察浏览器使用的 DNS 服务器,因此结果反映的是浏览器实际解析路径,而不是单凭客户端开关状态推断。

Clash Verge Rev 中检查哪些开关和运行配置

当前版本菜单名称可能略有变化,以下入口按公开界面字段说明,实际以安装版本为准。进入 Settings → System Setting,分别确认 System Proxy 和 TUN Mode 的状态。项目界面说明 TUN 模式用于接管系统流量,开启 TUN 后通常不需要再依赖系统代理;两者同时开启时,应以 Connections 和日志确认实际路径,而不是只看开关。

进入 Settings → TUN Mode,重点查看 DNS Mode、DNS Hijack、Strict Route、Auto Route 和 Auto Redirect。Mihomo 文档将 DNS 模式区分为 disabled、native 与 hijack:其中 hijack 会把匹配到的 DNS 流量转入内部 DNS 模块;Windows 使用 hijack 时还涉及 Strict Route,Linux 使用时还涉及 Auto Redirect。不要把某个示例中的 TUN 协议栈字段直接复制到自己的配置,先核对当前核心文档和运行配置。

在 Profiles 页面打开当前配置,使用右上角的 View Runtime Config 查看合并后的运行配置。重点搜索 dns:、enable、enhanced-mode、nameserver、respect-rules、ipv6、tun: 与 dns-hijack。Mihomo 文档显示,enhanced-mode 可为 fake-ip 或 redir-host;它们改变域名解析和地址映射方式,但 fake-ip 本身不能证明 DNS 没有泄漏。

如果订阅文件、基础配置和运行配置中的 DNS 段不一致,不要立即删除配置。先备份当前配置,再比较哪一层覆盖了哪一层。DNS Override 只针对当前配置生效,且可能改变订阅中的 DNS 字段;修改前应保留原文件,方便回滚。

从 Connections 和 Logs 判断是否真的绕过了 Clash

  1. 打开 Connections,在检测页面运行期间观察是否出现对应的域名请求、目标地址、规则和代理链。这里主要用于确认浏览器请求是否进入客户端,不等于直接显示所有 DNS 查询。
  2. 打开 Logs,将日志级别临时调高到能看到解析或连接错误的级别,记录测试时间前后的第一条相关日志。不要只截取一条成功连接就下结论。
  3. 对比三组结果:Clash 关闭、仅 System Proxy、仅 TUN。若只有某一模式下域名解析失败或出现本地解析器,应优先检查该模式的接管范围、DNS Hijack 和系统路由。
  4. 测试完成后恢复原来的代理模式和日志级别。日志可能包含访问域名、IP、连接元数据以及订阅凭据相关信息,分享前必须脱敏。

判断标准应是“检测站结果 + 运行配置 + Connections/Logs 三者是否相互印证”。仅凭出口 IP、单个网页能否打开,或单次检测中出现某个公共 DNS,都不能证明全部 DNS 请求已经按预期代理。

按现象分流:IPv6、浏览器 Secure DNS 与 DNS 字段

检测到本地运营商或路由器解析器

先关闭浏览器的 Secure DNS 或加密 DNS 进行一次对照测试,确认是否是浏览器独立解析路径。然后检查 TUN 是否开启、DNS Hijack 是否配置、Windows 是否启用 Strict Route,以及 Linux 是否需要 Auto Redirect。修改一次只改一个变量,改完重新运行相同检测。

只在 IPv6 结果中出现异常

这不一定是 DNS 泄漏,也可能是 IPv6 流量没有进入同一条 TUN 路径。查看运行配置中的 ipv6,同时在检测页面分别记录 IPv4、IPv6 和 DNS 结果。不要为了消除一个结果就直接关闭 IPv6;先确认你的网络和业务是否需要 IPv6,再决定是否调整。

浏览器结果与 Connections 不一致

浏览器可能使用 Secure DNS、缓存或独立网络接口,Connections 也可能只显示 HTTP/TCP 连接而不是每一次解析请求。清理页面缓存、重新打开无痕窗口,并在相同节点下复测。若差异持续存在,优先把它归类为“解析路径未完全确认”,而不是直接判定泄漏。

配置修改后 TUN 无法联网

先关闭 TUN,确认系统代理或直连可以恢复,再用备份还原最后一次修改。重点比较基础配置、订阅配置和 View Runtime Config,不要直接套用网络上的完整 YAML。Mihomo 的 respect-rules 会影响 DNS 请求是否遵循路由规则,启用它还需要相应的代理节点解析配置,具体字段应以当前官方文档为准。

复测、记录与回滚清单

  • 复测:同一网络、同一浏览器、同一节点,依次完成关闭代理、System Proxy、TUN 三组测试。
  • 记录:保存检测时间、代理模式、DNS 解析器、IPv4/IPv6 结果、Connections 中的规则与 Logs 中的相关错误。
  • 核对:确认 DNS Override 是否影响当前配置,确认运行配置中是否仍有可用的 dns.enable、nameserver 和 TUN DNS 接管设置。
  • 回滚:恢复原配置、关闭临时启用的 DNS Override 或 TUN 参数,再关闭并重新打开客户端验证系统网络。
  • 边界:DNS 泄漏、IP 泄漏、IPv6 直连和 WebRTC 暴露是不同问题,应分别测试和记录。

截至 2026-11-02,本文只依据公开的客户端界面字段、Mihomo DNS/TUN 文档和检测页面说明整理;不同客户端版本、核心版本、操作系统权限和订阅配置可能改变实际结果。

常见问题

Clash Verge Rev 检测到 Cloudflare 或 Google DNS,是不是 DNS 泄漏?

不一定。检测站显示的是实际参与解析的服务器,公共 DNS 可能来自客户端、节点、浏览器 Secure DNS 或网络中间层。应结合关闭代理、System Proxy、TUN 三组结果,以及运行配置和日志判断;不能只凭名称下结论。

开了 TUN 还需要检查 DNS Hijack 吗?

需要。TUN 是否接管 DNS 与 DNS Mode、DNS Hijack、Strict Route、Auto Redirect 和操作系统有关。Mihomo 文档说明 hijack 会把匹配到的 DNS 流量转入内部 DNS 模块,但不同平台的前置条件不同,实际应查看运行配置并做对照测试。

fake-ip 能不能解决 DNS 泄漏?

不能单独证明。fake-ip 是 Mihomo 的一种增强解析模式,主要改变域名到虚拟地址的映射方式;是否存在绕过,还要看 DNS 请求是否被浏览器、系统、IPv6 或其他接口直接发出。

检测结果正常,但网页仍然打不开怎么办?

先把问题从 DNS 泄漏中分离出来。检查 Connections 中的规则和代理链,再查看 Logs 的第一条连接错误;随后关闭 TUN、恢复备份配置,确认是 DNS、节点、规则还是系统权限问题。

怎样把日志发给别人排查?

只发送脱敏后的相关时间段,删除订阅链接、节点地址、密码、UUID、个人 IP、访问域名和令牌。客户端公开说明日志可能包含请求域名、IP 和连接元数据,完整日志不适合直接公开。

相关阅读

参考资料

  1. Clash Verge Rev 官方仓库:设置界面字段与 TUN、DNS Override 说明
  2. Clash Verge Rev 官方仓库:Profiles 与 View Runtime Config 字段
  3. Mihomo 官方文档:DNS 配置、fake-ip、redir-host 与 respect-rules
  4. Mihomo 官方文档:TUN、DNS Mode、DNS Hijack 与平台差异
  5. BrowserLeaks:DNS Leak Test(browserleaks.com)
  6. DNS Leak Test:DNS 解析器检测页面(dnsleaktest.com)
  7. Clash Verge Rev 官方隐私说明:配置与日志中的敏感信息