Skip to content

Clash Fake-IP 机制与 DNS 泄露防范实战 ​

很多用户在使用 Clash 时,常遇到“开启代理后局域网打印机连不上”、“国内网站跳转异地验证码”或“DNS 查询结果被本地运营商污染”等问题。这些现象大多与 Clash 的 DNS 解析机制 密切相关。

一、什么是 Fake-IP 模式?为什么它是默认标配? ​

传统的 Redir-Host 模式在收到应用程序发起的域名解析请求时,必须先在本地发起真实的 DNS 查询获得真实 IP 后,再将该 IP 与规则列表进行匹配。这会导致:

  1. 握手等待时延增加:客户端每次访问新网站都需等待一次远端或本地 DNS 往返。
  2. DNS 污染风险:在本地发起的明文 UDP 53 端口查询极易被中间网关篡改返回错误 IP。

而在 Fake-IP 模式下:

[应用程序发起 DNS 查询: example.com]
          │
          ▼
[Clash 内置 DNS 模块 (直接返回虚假保留网段 IP: 如 198.18.0.5)] (耗时 0 毫秒!)
          │
          ▼
[应用程序立即向 198.18.0.5 发起 TCP 连接]
          │
          ▼
[Clash 捕获连接,通过内部映射表查出真实域名为 example.com]
          │
          ▼
[由远端代理节点代为执行真实的防污染 DNS 解析并建立连接!]

这种机制既实现了瞬间建立连接,又彻底避免了本地 DNS 泄露与污染!

二、常见 DNS 故障与解决策略 ​

1. 局域网服务 (如打印机、NAS) 无法访问 ​

  • 原因:某些内网域名被错误分配了 Fake-IP,导致系统没有直接向局域网路由器发起真实查询。
  • 解决方案:在配置文件的 dns.fake-ip-filter 列表中添加内网域名例外:
yaml
dns:
  fake-ip-filter:
    - '*.lan'
    - '*.local'
    - 'router.asus.com'
    - 'tplinkwifi.net'

2. 本地 DNS 泄露 (DNS Leak) 排查 ​

如果访问 dnsleaktest.com 检测发现你的真实中国运营商 DNS 服务器出现在查询报告中,说明存在 DNS 泄露。请检查:

  • 确保 nameserver 仅用于解析直连国内域名;
  • 在 fallback 中配置经加密的 DoH (如 https://1.1.1.1/dns-query),阻断本地窃听。

延伸阅读

延伸阅读

想先确认自己有没有泄露:DNS 泄露在线检测方法