Redir-Host 与 Fake-IP 深度对比:如何选择最适合你的 DNS 模式
dns.enhanced-mode 有两个选项:Redir-Host 和 Fake-IP。很多用户对它们的区别感到困惑——有人听说 Fake-IP 更安全,有人抱怨 Fake-IP 导致某些设备无法上网。这两种模式到底有何不同?各自的优缺点是什么?本文将从协议原理、数据流向、安全性和实际体验四个维度进行一次彻底的对比,并给出明确的选择建议。
📖 基本概念速览
在深入对比之前,先用最简单的语言定义这两种模式:
| 特性 | Redir-Host | Fake-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 代理思路:
在此模式下,当你的浏览器想要访问 google.com 时,Clash 会先将域名转发给 DNS 服务器进行真实解析,获得例如 142.250.80.46 这样的真实 IP。然后内核根据规则(如 GEOIP 或 IP-CIDR)判断这个 IP 是否属于需要代理的范畴。如果是,后续流量将走代理隧道;如果不是,直接连接。
Redir-Host 的优势
- 兼容性极佳:所有设备、所有应用都能正常使用,因为 DNS 解析结果与传统网络完全一致。
- CDN 调度准确:因为获得了真实 IP,GEOIP 规则可以精确判断流量归属,国内网站不会走代理。
- 调试友好:出问题时可以用
nslookup直接查到真实 IP,排查直观。
Redir-Host 的劣势
- DNS 泄漏风险:本地发起了真实的 DNS 查询,如果 DNS 服务器未通过代理或使用了运营商 DNS,域名信息就会暴露。
- 解析延迟:每次连接新域名都需要等待 DNS 查询完成,在网络状况不佳时可能增加 100-300ms 的首包延迟。
- 依赖规则完整度:如果 GEOIP 数据库未及时更新,或某个域名的 IP 段发生了变化,可能导致分流错误。
🟣 Fake-IP 模式:假 IP + 延迟解析
Fake-IP 模式采用完全不同的思路——本地不进行真实 DNS 解析。当应用发起 DNS 查询时,内核立即返回一个位于 198.18.0.0/16 段的虚假 IP,并将域名与假 IP 的映射关系记录在内存中。当后续 TCP/UDP 流量到达 TUN 接口时,内核通过目标假 IP 反查出原始域名,再在代理出口处进行真实的 DNS 解析。
这意味着在本地网络中,根本看不到任何真实域名的 DNS 查询。抓包只能看到大量的 198.18.x.x 目标地址,而真正的域名解析在代理隧道的远端加密完成。
Fake-IP 的优势
- 极强的 DNS 防泄漏能力:本地零真实 DNS 查询,彻底杜绝本地 DNS 泄漏风险。
- 更低的首次请求延迟:DNS 查询被“短路”返回假 IP,无需等待解析,延迟为 0。
- 简化规则逻辑:不需要依赖 GEOIP 判断分流,域名匹配在规则引擎中直接完成。
Fake-IP 的劣势
- 少数应用兼容性问题:某些硬编码了 DNS 解析逻辑的 IoT 设备或老旧系统可能无法正确处理假 IP。
- CDN 调度依赖远端:国内网站的 CDN 调度可能不如 Redir-Host 准确,需通过
fake-ip-filter排除国内域名。 - 调试需要额外工具:无法直接用
nslookup查看真实解析结果,需通过日志面板或连接追踪。
📊 性能实测数据对比
我们在同一环境下(Windows 11, 千兆宽带, VLESS+XTLS 节点)对两种模式进行了基准测试。
| 测试指标 | Redir-Host | Fake-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 的假地址,反而多了一层保护。
🎯 适用场景指南
| 场景 | 推荐模式 | 原因 |
|---|---|---|
| 日常浏览网页、看视频 | Fake-IP | 低延迟、高安全,体验最佳 |
| 访问国内网站为主 | Redir-Host | CDN 调度更精准,直连延迟更低 |
| 需要极强隐私保护 | Fake-IP | 本地零 DNS 泄漏 |
| IoT 设备或老旧系统代理 | Redir-Host | 兼容性更好,不依赖 TUN 拦截 |
| 开发调试网络请求 | Redir-Host | 可直接查看真实 IP,方便排查 |
| 路由器/网关透明代理 | Fake-IP | 配合 TUN 模式实现全设备覆盖 |
| 同时使用 AI 服务 | Fake-IP | 域名匹配更精确,分流更灵活 |
🔄 如何无缝切换两种模式
如果你决定从 Redir-Host 切换到 Fake-IP(或反之),Clash Verge Rev 的配置热重载功能让这个过程非常简单:
- 打开
config.yaml,修改enhanced-mode的值。 - 根据目标模式调整
nameserver和fallback的 DNS 服务器列表。 - 如果切换到 Fake-IP,建议添加
fake-ip-filter排除本地设备(如打印机、NAS)的域名。 - 保存文件,Clash Verge Rev 会在 0.3 秒内热重载配置,无需重启客户端。
config-fakeip.yaml 和 config-redir.yaml),通过 Clash Verge Rev 的配置文件切换功能一键更换模式,适应不同网络环境。
❓ 常见问题
A:在
fake-ip-filter 中添加这些设备的域名后缀(如 *.lan、*.local),让它们走真实 DNS 解析。
A:使用 DoH/DoT 加密 DNS 作为
nameserver,避免使用运营商提供的明文 DNS,并确保 TUN 模式的 dns-hijack 已开启。
A:可以,切换后建议清除 DNS 缓存(
ipconfig /flushdns 或重启浏览器),以免旧缓存干扰新模式的验证。
🏁 总结与选择建议
经过以上全面对比,我们可以得出清晰的结论:
- 追求极致安全与低延迟:选择 Fake-IP。它从根源上消除了本地 DNS 泄漏,且首次请求延迟为零。适合绝大多数个人用户和隐私敏感场景。
- 追求最大兼容性与 CDN 精度:选择 Redir-Host。它接近传统网络行为,调试友好,适合企业环境、IoT 设备网关或对国内 CDN 调度有严格要求的场景。
- 不确定选哪个:从 Fake-IP 开始尝试。Clash Verge Rev 的默认配置即为 Fake-IP,它的综合体验在大多数场景下优于 Redir-Host。
无论选择哪种模式,Clash Verge Rev 都为你提供了灵活的配置空间和实时切换能力。你可以在不同场景下使用不同的模式,找到最适合自己网络环境的方案。如果你有自己的使用心得,欢迎在讨论区分享。