Clash DNS 设置详解:fake-ip、redir-host 与 nameserver 怎么配
Clash 与 Mihomo 的 dns 段是解决 DNS 污染与泄漏的核心,但字段多、照抄易断网。本文给出可直接粘贴的完整 yaml,逐字段解释 enhanced-mode、fake-ip-filter、nameserver、fallback 的作用,并说明在 Clash Verge Rev 中如何生效。

直接答案
日常使用推荐 enhanced-mode: fake-ip,nameserver 填国内 DoH(doh.pub、alidns),fallback 填国外 DoH(1.1.1.1、dns.google),用 fallback-filter 的 geoip 规则决定何时采用 fallback 结果,再把局域网、游戏平台、时间同步等域名放进 fake-ip-filter。需要真实 IP 的场景(游戏、局域网设备、部分路由器)改用 redir-host 并配合 nameserver-policy 分流。配置写在客户端的覆写或 Merge 区域,不要直接改订阅文件。
Clash 与 Mihomo 内核的 dns 段只有十几个字段,但它决定了三件事:域名在哪里解析、解析结果是否可信、客户端返回给应用的是真 IP 还是占位 IP。配错的后果五花八门:打不开路由器后台、游戏连不上、流媒体提示地区不符、开 TUN 后全部超时。本文是一份面向机场用户的 Clash DNS 设置说明:先给结论和一份完整配置,再逐字段解释为什么这么写。如果还没有在 Clash 系客户端里导入过机场订阅链接,先看 Clash Verge Rev 使用教程。
先选模式:fake-ip 还是 redir-host
| 对比项 | fake-ip | redir-host |
|---|---|---|
| 返回给应用的 IP | 198.18.0.0/16 段的占位 IP | 真实解析出的 IP |
| 真实解析发生在 | 代理域名在节点侧解析,直连域名在本地 | 全部在本地 nameserver / fallback 完成 |
| DNS 泄漏风险 | 极低,域名随请求一起交给节点 | 取决于 nameserver 是否加密与是否走代理 |
| 首次连接速度 | 快,省去本地解析等待 | 多一次本地解析 |
| 兼容性问题 | 局域网设备、部分游戏、NTP 需加入 fake-ip-filter | 几乎没有 |
| 适用场景 | 日常上网、AI 工具、流媒体 | 游戏、NAS、需要真实 IP 的软件 |
结论:日常用 fake-ip,再用 fake-ip-filter 把例外域名挑出去;只有在游戏或局域网设备明显异常、且加 filter 仍不解决时才整体切到 redir-host。
可直接粘贴的完整配置
把下面内容写入 Clash Verge Rev 的「配置覆写」或 Merge 文件,Mihomo Party 写入「覆写」,Clash Meta for Android 写入「覆写 → DNS」。不要直接编辑订阅文件,否则下次订阅更新会把修改冲掉。
dns:
enable: true
listen: 0.0.0.0:1053
ipv6: false
prefer-h3: false
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
use-hosts: true
use-system-hosts: true
respect-rules: false
# 这些域名不返回 fake-ip,而是正常解析出真实 IP
fake-ip-filter:
- "*.lan"
- "*.local"
- "+.localhost"
- "+.msftconnecttest.com"
- "+.msftncsi.com"
- "time.*.com"
- "ntp.*.com"
- "+.pool.ntp.org"
- "+.stun.*.*"
- "+.xboxlive.com"
- "+.battle.net"
- "+.steamcontent.com"
- "localhost.ptlogin2.qq.com"
# 解析 nameserver / fallback 中 DoH 域名自身所用的 DNS,必须是纯 IP
default-nameserver:
- 223.5.5.5
- 119.29.29.29
# 解析节点服务器域名所用的 DNS
proxy-server-nameserver:
- https://doh.pub/dns-query
- https://dns.alidns.com/dns-query
# 主解析:国内加密 DNS
nameserver:
- https://doh.pub/dns-query
- https://dns.alidns.com/dns-query
# 备用解析:国外加密 DNS,用于被污染或非国内结果的域名
fallback:
- https://1.1.1.1/dns-query
- https://dns.google/dns-query
- tls://8.8.4.4:853
fallback-filter:
geoip: true
geoip-code: CN
ipcidr:
- 240.0.0.0/4
- 0.0.0.0/32
domain:
- "+.google.com"
- "+.youtube.com"
- "+.openai.com"
- "+.chatgpt.com"
- "+.anthropic.com"
- "+.claude.ai"
# 按域名指定解析服务器(Mihomo 内核支持 geosite 写法)
nameserver-policy:
"geosite:cn,private":
- https://doh.pub/dns-query
- https://dns.alidns.com/dns-query
"geosite:geolocation-!cn":
- https://1.1.1.1/dns-query
- https://dns.google/dns-query
保存后重载配置,到「日志」页确认没有 dns 相关的 error,再用 nslookup chatgpt.com 看返回是否为 198.18 开头的地址。
逐字段解释
enhanced-mode 与 fake-ip-range:模式开关和占位 IP 段。198.18.0.0/16 是保留测试网段,不会与真实公网 IP 冲突,一般不需要改。
fake-ip-filter:这是最常被忽略、却最容易引发怪问题的字段。局域网域名、Windows 联网检测、NTP 时间同步、游戏平台的 STUN 与登录域名,拿到占位 IP 后都会异常,表现为「网络受限」提示、时间不同步、游戏匹配失败。遇到某个软件在 fake-ip 下不正常,第一反应就是把它的域名加进来。
default-nameserver:nameserver 里写的是 DoH 域名,这些域名自己也得先被解析,用的就是这里的纯 IP DNS。只能写 IP,写域名会循环依赖。
proxy-server-nameserver:解析节点服务器地址用的 DNS。节点域名被污染是「全部节点超时」的常见原因之一,这里单独指定国内 DoH 可以减少这类问题。
nameserver 与 fallback:两组同时查询。结果命中 fallback-filter 的条件(属于国内 IP、命中 ipcidr、或域名在 domain 列表)时,决定采用哪一组:geoip 为 true 时,nameserver 返回国内 IP 就信任它,返回国外 IP 则改用 fallback 结果。domain 列表里的域名直接用 fallback,适合把 AI 工具与 Google 系域名放进去。
nameserver-policy:比 fallback 更直接的分流方式,按域名集合指定解析服务器。国内域名用国内 DoH,geolocation-!cn 用国外 DoH。它与 fallback 可以共存,policy 优先级更高。
respect-rules:设为 true 时 DNS 查询本身也走分流规则,需要配合 proxy-server-nameserver 使用,否则可能出现 DNS 查询等待代理、代理等待 DNS 的死锁。新手保持 false。
⚠️ 注意
yaml 对缩进极其敏感,fallback-filter 下的 ipcidr 与 domain 必须比上一级多两个空格。粘贴后如果客户端提示解析失败或所有节点消失,九成是缩进被编辑器改成了制表符。
让配置真正生效
- Clash Verge Rev:设置 → 「DNS 覆写」开关打开;系统设置里开启「TUN 模式」,TUN 下自动劫持 53 端口。只用系统代理模式时,浏览器自己的 DNS 仍可能绕过客户端。
- Mihomo Party:设置 → DNS 页面可直接填写,或者在覆写里粘贴 yaml;同样需要 TUN 配合。
- Clash Meta for Android:VPN 模式默认接管 DNS;覆写里把 DNS 劫持选为「全部」。
- 验证:在「连接」页搜索 53 端口,正常情况下不应看到去往运营商 DNS 的 DIRECT 连接。完整验证方法见 DNS 泄漏检测与修复。
常见症状对照
| 症状 | 原因 | 修改 |
|---|---|---|
| 改完配置后所有网站打不开 | nameserver 不可达或缩进错误 | 删掉 dns 段重载二分定位 |
| 打不开路由器后台 / NAS | 局域网域名拿到 fake-ip | 加入 fake-ip-filter |
| Windows 右下角显示「无 Internet」 | 联网检测域名拿到 fake-ip | 加入 msftconnecttest.com |
| 游戏无法匹配或语音断开 | STUN / 游戏平台域名拿到 fake-ip | 加入 filter 或整体切 redir-host |
| ChatGPT 提示网络环境异常但网页能开 | AI 域名被国内 DNS 解析 | 把域名放进 fallback-filter.domain |
| 个别网站解析到错误 IP | 被污染且 fallback 未触发 | 同上,或改用 nameserver-policy |
| 开 TUN 后 DNS 查询超时 | DoH 域名无法解析 | 检查 default-nameserver 为纯 IP |
更多污染类问题的判断方法见 DNS 污染怎么判断与修复,规则分流与 DNS 的联动问题见 分流规则不生效怎么办。
预防与订阅选择
💡 提示
每次大版本升级客户端后,把本文配置与客户端自带的默认 DNS 覆写模板对比一次:Clash Verge Rev 与 Mihomo Party 的默认模板会随版本更新,字段名偶有调整。
选机场时也可以把 DNS 当作一项指标。我们做 Clash 机场推荐、Clash Meta 机场推荐与 Clash Verge 机场推荐时,会看订阅配置是否自带完整 dns 段、节点域名是否提供 IP 备用入口。宇宙云 的订阅默认带 fake-ip 与 fallback 配置,灯塔加速 则提供多入口域名降低节点域名被污染的影响;其他 Clash 系适配良好的品牌可以在 机场推荐 栏目按客户端筛选,客户端层面的更多问题见 客户端排错。
总结
- fake-ip 返回占位 IP、真实解析在节点侧完成,天然防泄漏,是日常上网的首选;redir-host 返回真实 IP,适合游戏与局域网场景
- nameserver 负责国内域名,fallback 负责被污染域名,两者靠 fallback-filter 的 geoip 判断切换
- fake-ip-filter 是最常被忽略的字段,局域网、NTP、游戏平台域名不加进去会出各种怪问题
- 配置要写在覆写 / Merge 区域,直接改订阅文件会在下次更新时被冲掉
常见问题
Q机场订阅链接怎么导入 Clash?
在 Clash Verge Rev 或 Mihomo Party 的订阅页粘贴链接导入即可。导入后不要直接改订阅文件里的 dns 段,而是到「配置覆写」或 Merge 里写自己的 dns 配置,这样每次更新订阅都不会被覆盖。
QClash 机场推荐怎么选?
优先选订阅自带规范 dns 段、节点侧解析环境干净、提供 Clash Meta 格式订阅的机场。宇宙云、灯塔加速这类老牌品牌的 Clash 订阅字段完整,导入 Clash Verge Rev 后只需确认 TUN 与 DNS 覆写开关即可使用。
Q机场是否支持 Clash Meta?
绝大多数主流机场都提供 Clash Meta(Mihomo)格式订阅,用户中心通常标注为「Clash Meta」或「Mihomo」。如果只提供旧版 Clash 格式,本文的 dns 段依然兼容,只是 nameserver-policy 的 geosite 写法需要 Mihomo 内核才能识别。
Q机场连不上是什么原因?
如果是修改 DNS 配置后才连不上,先检查 nameserver 是否可达,再检查 yaml 缩进是否正确。最快的验证方法是把 dns 段临时删掉重载,能连上就是配置问题,连不上就与 DNS 无关。
Q机场为什么有些节点不能看流媒体?
一种情况是流媒体域名被 fake-ip-filter 或 nameserver-policy 分到了国内 DNS 解析,解析地区与出口 IP 不一致。检查这两个字段里有没有误匹配流媒体域名的通配规则,把它们移出即可。
参考资料与信息来源
- Mihomo 文档:DNS 配置项说明 · enhanced-mode、nameserver-policy、fallback-filter 的字段定义
- Clash Verge Rev 文档:配置覆写与 Merge · 覆写区域的写法与生效顺序
