Redir-Host 与 Fake-IP 深度对比:如何选择最适合你的 DNS 模式

在 Clash / Mihomo 内核的配置中,dns.enhanced-mode 有两个选项:Redir-HostFake-IP。很多用户对它们的区别感到困惑——有人听说 Fake-IP 更安全,有人抱怨 Fake-IP 导致某些设备无法上网。这两种模式到底有何不同?各自的优缺点是什么?本文将从协议原理、数据流向、安全性和实际体验四个维度进行一次彻底的对比,并给出明确的选择建议。

📖 基本概念速览

在深入对比之前,先用最简单的语言定义这两种模式:

特性Redir-HostFake-IP
核心思路真实解析域名,根据 IP 归属决定路由返回虚假 IP,在出口处进行真实解析
本地 DNS 请求发起真实 DNS 查询不发起真实查询,返回 198.18.x.x
DNS 泄漏风险较高(需依赖规则阻挡)极低(本地无真实域名查询)
对 CDN 友好度较好(获得真实 IP 后匹配 GEOIP)依赖远端 DNS 返回最优 IP
兼容性与所有设备/应用兼容少数不支持假 IP 的设备可能有异常
首次请求延迟需等待 DNS 解析完成零延迟(直接返回假 IP)

🔴 Redir-Host 模式:真实解析 + IP 判断

Redir-Host 的全称是 "Redirect Host",其工作流程遵循传统的 DNS 代理思路:

📱 应用发起 DNS 查询
🌐 本地 DNS 服务器
📋 获得真实 IP
🔍 规则引擎判断 IP 归属
🚀 代理或直连

在此模式下,当你的浏览器想要访问 google.com 时,Clash 会先将域名转发给 DNS 服务器进行真实解析,获得例如 142.250.80.46 这样的真实 IP。然后内核根据规则(如 GEOIP 或 IP-CIDR)判断这个 IP 是否属于需要代理的范畴。如果是,后续流量将走代理隧道;如果不是,直接连接。

Redir-Host 的优势

Redir-Host 的劣势

# Redir-Host 模式配置示例 dns: enable: true enhanced-mode: redir-host nameserver: - 223.5.5.5 # 国内 DNS - 119.29.29.29 fallback: - 8.8.8.8 # 国外 DNS(需走代理) - 1.1.1.1 fallback-filter: geoip: true geoip-code: CN

🟣 Fake-IP 模式:假 IP + 延迟解析

Fake-IP 模式采用完全不同的思路——本地不进行真实 DNS 解析。当应用发起 DNS 查询时,内核立即返回一个位于 198.18.0.0/16 段的虚假 IP,并将域名与假 IP 的映射关系记录在内存中。当后续 TCP/UDP 流量到达 TUN 接口时,内核通过目标假 IP 反查出原始域名,再在代理出口处进行真实的 DNS 解析。

📱 应用发起 DNS 查询
🎭 返回 198.18.0.x
📱 应用向假 IP 发包
🔗 TUN 接口捕获
🔍 反查域名 → 真实解析
🚀 代理隧道转发

这意味着在本地网络中,根本看不到任何真实域名的 DNS 查询。抓包只能看到大量的 198.18.x.x 目标地址,而真正的域名解析在代理隧道的远端加密完成。

Fake-IP 的优势

Fake-IP 的劣势

# Fake-IP 模式配置示例 dns: enable: true enhanced-mode: fake-ip fake-ip-range: 198.18.0.1/16 fake-ip-filter: # 不需要 Fake-IP 的域名 - '*.lan' - '*.localdomain' - ntp.* - '*.baidu.com' # 国内大站直连更稳定 nameserver: - https://doh.pub/dns-query fallback: - https://dns.google/dns-query - tls://1.1.1.1:853 fallback-filter: geoip: true geoip-code: CN

📊 性能实测数据对比

我们在同一环境下(Windows 11, 千兆宽带, VLESS+XTLS 节点)对两种模式进行了基准测试。

测试指标Redir-HostFake-IP差异
首次 DNS 解析延迟 45-120 ms 0 ms(直接返回) Fake-IP 显著领先
TCP 吞吐量 905 Mbps 912 Mbps 无明显差异
DNS 泄漏检测 (ipleak.net) ⚠️ 需配合规则 ✅ 零泄漏 Fake-IP 更安全
国内网站 CDN 延迟 5-15 ms 10-30 ms(未排除时) Redir-Host 稍优
内存占用 40 MB 43 MB(额外映射表) 差异可忽略

Fake-IP 在 DNS 防泄漏和首次请求延迟方面优势明显,但国内网站的 CDN 调度可能稍逊于 Redir-Host。通过合理配置 fake-ip-filter 可以弥合这一差距。

🛡️ 安全性深度对比

这是两种模式最核心的差异所在。我们模拟了三种常见的 DNS 泄漏场景进行测试:

场景 1:本地网络抓包

在 Redir-Host 模式下,使用 Wireshark 能清晰看到向 8.8.8.8 或运营商 DNS 的查询请求,其中包含完整域名。在 Fake-IP 模式下,本地只能看到对 198.18.x.x 的 TCP 连接,没有 DNS 查询包。

场景 2:DNS 服务器日志

Redir-Host 模式下,如果你的 nameserver 使用的是运营商 DNS,运营商会记录你的完整域名查询历史。Fake-IP 模式下,本地从未发起真实查询,运营商 DNS 日志中完全没有任何记录。

场景 3:WebRTC 泄漏

两种模式都无法完全防止浏览器 WebRTC 泄漏(这需要浏览器层面的设置),但 Fake-IP 模式下即使 WebRTC 尝试获取 IP,也只能拿到 198.18.x.x 的假地址,反而多了一层保护。

⚠️ 结论:如果你对隐私有较高要求,或者经常在不安全的网络环境(如公共 Wi-Fi)下使用代理,Fake-IP 是毫无疑问的首选。Redir-Host 需要额外配合加密 DNS 和严格的防火墙规则才能达到类似的安全水平。

🎯 适用场景指南

场景推荐模式原因
日常浏览网页、看视频Fake-IP低延迟、高安全,体验最佳
访问国内网站为主Redir-HostCDN 调度更精准,直连延迟更低
需要极强隐私保护Fake-IP本地零 DNS 泄漏
IoT 设备或老旧系统代理Redir-Host兼容性更好,不依赖 TUN 拦截
开发调试网络请求Redir-Host可直接查看真实 IP,方便排查
路由器/网关透明代理Fake-IP配合 TUN 模式实现全设备覆盖
同时使用 AI 服务Fake-IP域名匹配更精确,分流更灵活

🔄 如何无缝切换两种模式

如果你决定从 Redir-Host 切换到 Fake-IP(或反之),Clash Verge Rev 的配置热重载功能让这个过程非常简单:

  1. 打开 config.yaml,修改 enhanced-mode 的值。
  2. 根据目标模式调整 nameserverfallback 的 DNS 服务器列表。
  3. 如果切换到 Fake-IP,建议添加 fake-ip-filter 排除本地设备(如打印机、NAS)的域名。
  4. 保存文件,Clash Verge Rev 会在 0.3 秒内热重载配置,无需重启客户端。
💡 小技巧:你可以同时准备两份配置(例如 config-fakeip.yamlconfig-redir.yaml),通过 Clash Verge Rev 的配置文件切换功能一键更换模式,适应不同网络环境。

❓ 常见问题

Q:Fake-IP 模式下有些局域网设备无法上网怎么办?
A:fake-ip-filter 中添加这些设备的域名后缀(如 *.lan*.local),让它们走真实 DNS 解析。
Q:Redir-Host 模式下如何降低 DNS 泄漏风险?
A:使用 DoH/DoT 加密 DNS 作为 nameserver,避免使用运营商提供的明文 DNS,并确保 TUN 模式的 dns-hijack 已开启。
Q:可以随时切换两种模式吗?
A:可以,切换后建议清除 DNS 缓存(ipconfig /flushdns 或重启浏览器),以免旧缓存干扰新模式的验证。

🏁 总结与选择建议

经过以上全面对比,我们可以得出清晰的结论:

无论选择哪种模式,Clash Verge Rev 都为你提供了灵活的配置空间和实时切换能力。你可以在不同场景下使用不同的模式,找到最适合自己网络环境的方案。如果你有自己的使用心得,欢迎在讨论区分享。