Clash Verge Rev DNS 覆写什么时候该开?配置前先看判断表
简答:改了 DNS 后节点全超时,或订阅一更新设置又没了?先不要继续叠加字段:检查当前 Profile 是否已有 dns 段,已有且连接正常时保持 DNS Overwrite 关闭;确需修改时先备份,再用最小 Merge 配置,并分别验证系统代理、TUN、IPv4、IPv6 和浏览器 DNS。
定义:Clash Verge Rev DNS 设置,是通过客户端界面或配置文件控制域名解析服务器、fake-ip 或 redir-host 模式,以及 TUN 场景下 DNS 请求处理路径的过程。
先看判断表:DNS Overwrite 什么时候该开
本文是第三方使用指南,只讲 Clash Verge Rev 的 DNS 设置与防泄漏排查,不含其他客户端的具体操作。客户端界面名称可能随版本变化,以下入口均应以当前版本显示为准。Clash Verge Rev 项目仓库的设置字段中包含 DNS Overwrite、TUN、DNS Hijack、DNS Mode 和备份等配置项;其设置文本还提示,DNS 覆写开关按 Profile 分别保存,订阅已有自定义 DNS 时可能替换原配置。可先查看Clash Verge Rev 项目仓库中的 settings.json。
| 当前情况 | 建议 | 先做什么 |
|---|---|---|
订阅已有完整的 dns:,网页和节点正常 | 保持 DNS Overwrite 关闭 | 避免覆盖订阅提供的 nameserver、fallback 或节点解析策略。 |
订阅没有 dns:,TUN 开启后解析异常 | 备份后增加最小配置 | 先只加入 enable、default-nameserver、nameserver 和必要的模式字段。 |
| 只有 NAS、打印机、企业内网打不开 | 先不要更换全部 DNS | 切换 redir-host 做对照,再检查 fake-ip-filter、本地域名和直连 DNS。 |
| 网页能打开,但检测仍显示系统 DNS | 分开排查浏览器和客户端 | 检查浏览器 Secure DNS、IPv6、TUN 和 WebRTC,不能只看一个检测页面。 |
| 订阅更新后自定义设置消失 | 不要直接改远程订阅 | 把自定义字段放进 Merge 或客户端的 DNS 设置,并确认活动 Profile。 |
最快解法:如果当前只是担心泄漏而没有明确故障,先记录现状,不要直接开启 fake-ip、TUN 和 DNS Hijack。先完成代理端口测试,再逐项增加配置。
第 1 步:备份 Profile,确认订阅已有的 DNS 字段
- 备份当前配置。打开 Clash Verge Rev 的设置或高级设置,查找 Backup、Export、Open Config Directory 或类似入口。至少保存活动 Profile 名称、原始配置副本和订阅链接。订阅链接通常包含访问凭据,不要贴到公开 issue、聊天窗口或截图中。
- 确认活动 Profile。进入 Profiles,找到当前正在使用的 Remote 或 Local 配置。不要只修改未启用的配置文件。
- 搜索 DNS 字段。在配置预览或导出文件中搜索
dns:、enable:、nameserver:、fallback:、enhanced-mode:和respect-rules:。 - 先做无修改对照。记录系统代理关闭、系统代理开启、TUN 开启三种状态下的网页访问、节点连接、局域网访问和 DNS 查询结果。这样回滚时才知道是哪一层发生变化。
如果订阅已有自定义 DNS 且连接正常,优先保持 DNS Overwrite 关闭。项目仓库的设置文本明确提示,覆写可能替换订阅 DNS,进而导致节点无法连接或部分网站无法加载;这不是说每个订阅都会出问题,而是说明开启前应先确认配置内容。
第 2 步:用最小 Merge 配置,补齐 default-nameserver
需要修改时,优先使用 Clash Verge Rev 的 Merge、扩展配置或 DNS 设置入口,不直接编辑远程订阅。不同版本的入口名称可能不同,以当前界面为准。下面示例中的地址使用文档占位值,不能直接复制使用;你需要替换为当前网络中能够访问、来源可核实的 DNS 地址。
dns:
enable: true
ipv6: false
enhanced-mode: redir-host
default-nameserver:
- 192.0.2.53
nameserver:
- https://dns.example.invalid/dns-query
fallback:
- https://fallback.example.invalid/dns-query
proxy-server-nameserver:
- 192.0.2.54
direct-nameserver:
- 192.0.2.55
respect-rules: false
default-nameserver 必须放入纯 IP 地址,用来解析 nameserver、fallback 等 DNS 服务器的域名;如果你把 DoH 地址写成域名,却没有可用的 default-nameserver,可能出现“DNS 服务器本身无法解析”的循环依赖。mihomo 文档对该字段、nameserver、fallback、proxy-server-nameserver 和 direct-nameserver 都有单独定义,可参考mihomo DNS configuration 文档。
地址如何选择:default-nameserver 可以填写路由器或系统下发的纯 IP DNS;Windows 可用 ipconfig /all 查看网卡的 DNS Servers,macOS 可用 scutil --dns 查看当前解析器,Linux 可用 resolvectl status 查看。nameserver 是常规域名解析服务器;fallback 是备用解析服务器,是否启用及过滤条件应结合你的分流需求;proxy-server-nameserver 只负责解析代理节点域名;direct-nameserver 用于直连出口的域名解析。不要把同一个地址机械复制到所有字段。
如果订阅已经有复杂的 dns: 段,不要把整段示例覆盖进去。先只增加确实缺少的字段,并在每次修改后重新加载活动 Profile。
字段速查卡:填什么、填错会怎样
| 字段 | 作用 | 建议填写类型 | 填错时的典型表现 |
|---|---|---|---|
enable | 是否启用 mihomo DNS 模块 | true 或 false | 关闭后通常回到系统 DNS,Merge 中其他 DNS 字段可能不产生预期效果。 |
default-nameserver | 解析 DNS 服务器域名 | 可访问的 IP 地址 | DoH 或 DoT 主机名无法解析,日志出现 DNS 初始化或连接失败。 |
nameserver | 常规域名解析 | IP、DoH 或 DoT 地址 | 普通网站解析超时、解析结果异常或访问变慢。 |
fallback | 备用域名解析 | 备用 IP、DoH 或 DoT 地址 | 部分域名仍解析失败,或 fallback 结果与分流规则不一致。 |
proxy-server-nameserver | 解析代理节点域名 | 可直连访问的 DNS 地址 | 网页可能能打开,但节点域名解析失败,表现为节点全部超时。 |
direct-nameserver | 解析直连出口域名 | 路由器、系统或指定 DNS | 局域网、企业内网或直连域名打不开。 |
respect-rules | 让 DNS 连接遵守路由规则 | true 或 false | 开启后若缺少 proxy-server-nameserver,可能出现代理节点解析的循环依赖。 |
mihomo 文档说明,fallback 通常配合 fallback-filter 使用;新的配置也可以用 nameserver-policy 按域名指定解析服务器。若你只是解决基础解析问题,先不要同时加入复杂的 geosite、rule-set 和多层策略。
第 3 步:选择 redir-host 或 fake-ip,并处理局域网兼容性
| 模式 | 适合先用的场景 | 可能出现的问题 | 处理顺序 |
|---|---|---|---|
redir-host | 优先兼容局域网、企业内网、NAS、打印机和要求真实 IP 的应用 | 部分复杂分流需要额外确认域名与规则命中 | 先看 DNS 结果,再看规则命中和连接日志。 |
fake-ip | 需要域名与规则配合,或 TUN 承接较多应用流量 | 部分局域网设备、游戏、银行类应用或硬编码 IP 的程序不兼容 | 补充最小 fake-ip-filter,仍异常时切回 redir-host。 |
fake-ip 只是 DNS 增强模式,不等于 TUN,也不代表所有流量自动经过代理。若要尝试 fake-ip,应确保 Merge 中同时启用 DNS,并把局域网域名加入排除列表:
dns:
enable: true
enhanced-mode: fake-ip
fake-ip-filter:
- '*.lan'
- '*.local'
- 'printer.example.invalid'
上面的域名只是占位值。真实环境中可替换为你的局域网后缀、NAS 域名或打印机域名。若你不知道局域网使用什么域名,先用 nslookup nas.example.local 或系统网络工具确认,不要凭猜测添加大量过滤项。
第 4 步:TUN 与 DNS Hijack 怎么设置
系统代理主要影响遵循系统代理设置的应用;TUN 通过虚拟网卡承接更多系统流量;DNS Hijack 则把匹配到的 DNS 连接导入客户端内部 DNS 模块。三者不是同一个开关,开启 fake-ip 也不会自动让所有应用流量经过代理。
在 Clash Verge Rev 中,进入 TUN 或 Tunnel 设置,查找 DNS Mode、DNS Hijack、Strict Route、Auto Route 等选项。Windows 下启用 DNS Mode 为 hijack 通常需要 Strict Route;Linux 下使用 hijack 还涉及 Auto Redirect。界面字段可在项目仓库的settings.json中核对,底层字段说明以mihomo TUN 文档为准。
需要用 Merge 或配置文件表达时,可参考下面的最小结构:
tun:
enable: true
auto-route: true
dns-mode: hijack
dns-hijack:
- any:53
- tcp://any:53
strict-route: true
其中 any:53 主要匹配 UDP 53 端口,tcp://any:53 用于 TCP 53。mihomo 文档说明,Windows 的 hijack 场景需要 Strict Route,Linux 场景需要 Auto Redirect;macOS 和 Windows 也不能自动劫持发往本地网络的 DNS 请求。因此,TUN 开启后仍看到局域网 DNS,不应立即认定所有外部 DNS 都泄漏。
- 先关闭 TUN,只开启系统代理,确认普通网页可访问。
- 再开启 TUN,确认虚拟网卡、Auto Route 和 DNS Mode 状态正常。
- 若 TUN 后全网打不开,先回滚 DNS Merge,再单独验证 TUN,避免同时修改多个变量。
- 若只有局域网失效,先切换 redir-host,并检查路由排除、fake-ip-filter 和本地 DNS。
第 5 步:按系统验证 DNS、IPv6、WebRTC 和代理入口
DNS 泄漏检测不能只看一个网页。应分别记录系统代理关闭、系统代理开启、TUN 开启三种状态,并把 DNS、IPv4、IPv6、WebRTC 分开判断。检测页面显示的 DNS 服务器,只代表该次测试看到的解析路径,不能自动代表所有应用。
Windows
- 运行
ipconfig /all,记录当前网卡 DNS Servers。 - 运行
nslookup example.com,观察 Server 和 Address;再运行nslookup -type=AAAA example.com检查 IPv6 解析。 - 清理缓存:
ipconfig /flushdns。 - 如果使用本地 mixed 端口,例如设置页显示为
7890,运行curl -I -x http://127.0.0.1:7890 https://example.com。能建立 HTTP 代理连接,只能说明本地代理入口可用,不能证明 DNS 没有泄漏。
macOS
- 运行
scutil --dns查看系统解析器。 - 运行
dig example.com和dig AAAA example.com,分别记录 A、AAAA 结果。 - 清理缓存:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder。 - 在 Clash Verge Rev 设置页确认当前 Profile、DNS Overwrite 和 TUN 状态,再重复访问相同域名。
Linux
- 运行
resolvectl status查看当前链路 DNS;若系统没有该命令,再检查 NetworkManager 或当前发行版的解析服务。 - 运行
resolvectl query example.com,必要时使用dig A example.com与dig AAAA example.com。 - 清理缓存需按当前解析服务执行,不能把 systemd-resolved 命令直接套用到所有发行版。
- 如果启用了 TUN 和 Auto Redirect,记录开启前后的路由、DNS 和日志变化;TCP 测试不适用于 UDP 或 QUIC 协议。
WebRTC 检查:在浏览器的 WebRTC 检测页面记录候选地址,重点看是否出现不应暴露的本地地址或直连公网地址。WebRTC、IPv6 和 DNS 是不同层的问题;关闭浏览器 Secure DNS 只能用于对照测试,不能代替客户端配置验证。
按症状排错:先回滚,再定位单个字段
| 症状 | 优先检查 | 最小处理 |
|---|---|---|
| 节点全部超时 | proxy-server-nameserver、节点域名、活动 Profile | 关闭 DNS Overwrite 或回滚 Merge,确认原订阅恢复后再单独增加节点解析。 |
| 普通网页能打开,但 DNS 检测显示系统解析器 | 浏览器 Secure DNS、IPv6、TUN 和测试状态 | 关闭浏览器独立 DNS 做对照,并分别测试 A、AAAA 和 WebRTC。 |
| 只有 NAS、打印机或企业内网失效 | fake-ip-filter、direct-nameserver、本地网段 | 先切换 redir-host,再加入必要的局域网域名排除项。 |
| 只有一个应用打不开 | 应用是否遵循系统代理、是否自带 DNS、是否使用 QUIC | 查看应用自身代理设置,暂时关闭 Secure DNS 或 QUIC 做对照。 |
| 订阅更新后设置消失 | 是否直接修改 Remote 配置、Merge 是否启用 | 将自定义字段移到 Merge 或 DNS 设置,刷新后重新确认活动 Profile。 |
| 启用 TUN 后全网断开 | 虚拟网卡、Strict Route、DNS Mode、路由冲突 | 先关闭 TUN 验证系统代理,再逐个恢复 TUN、DNS Hijack 和路由选项。 |
一个常见误操作是把完整的 dns: 示例直接粘贴进已有配置,导致订阅原本的 nameserver-policy、fallback-filter 或节点解析逻辑被覆盖。最小可用原则是:一次只改一组字段,重载后查看日志,再决定是否继续。
参考资料与延伸阅读
本文依据 Clash Verge Rev 项目 GitHub 仓库中的设置字段、mihomo DNS 配置文档和 mihomo TUN 配置文档整理,查阅于 2026 年 11 月 13 日。项目版本、界面入口和字段支持可能变化;遇到菜单名称不一致时,以当前客户端界面、项目仓库和 mihomo 文档为准。
如果 DNS 设置完成后仍无法访问网页,可继续查看站内的Clash Verge Rev TUN 模式排查指南;如果你需要进一步拆解 DNS 字段,可参考站内的Mihomo DNS 配置指南。
常见问题
Clash Verge Rev 的 DNS Overwrite 要不要开启?
没有统一答案。订阅已有 dns 段且连接正常时,建议先保持关闭;订阅缺少 DNS、TUN 下出现解析异常,或你明确需要统一解析策略时,再备份并增加最小配置。若客户端提示订阅包含自定义 DNS,应先确认覆写可能带来的影响。
default-nameserver 为什么要填写纯 IP?
它用于解析 nameserver、fallback 等 DNS 服务器的域名。如果上游 DoH 或 DoT 地址本身是域名,而没有可用的 default-nameserver,可能产生 DNS 服务器无法解析自身的循环依赖。
fallback 和 nameserver 有什么区别?
nameserver 是常规域名解析服务器,fallback 是备用解析服务器,通常还会配合 fallback-filter 判断何时采用备用结果。简单配置可以先只使用 nameserver;需要备用解析时再增加 fallback 和对应过滤条件。
fake-ip 是不是等于所有流量都经过代理?
不是。fake-ip 是 DNS 增强模式,用于把域名映射到虚拟地址并配合规则处理;它不等于 TUN,也不能单独证明所有应用流量都经过代理。
为什么 DNS 设置后 NAS、打印机或局域网打不开?
常见原因包括 fake-ip 对本地域名的处理、局域网 DNS 不可达、路由排除缺失,或应用不遵循客户端代理。先切换 redir-host 做对照,再检查 fake-ip-filter、direct-nameserver 和本地网段。
检测页面显示 DNS 泄漏,就能确定配置失败吗?
不能直接下结论。还要确认测试时处于直连、系统代理还是 TUN 状态,浏览器是否启用了独立 DNS,是否存在 IPv6 或 WebRTC 直连,以及客户端日志中的 DNS 查询路径。
订阅更新后手动修改的 DNS 消失了怎么办?
不要直接修改远程订阅文件。将自定义字段放入 Merge、扩展配置或客户端 DNS 设置,启用后刷新活动 Profile,并确认增强配置没有被关闭。