网络知识百科

DNS 污染与 DNS Leak(DNS 泄漏)防御机制科普

解释 GFW 域名投毒的阻断原理,以及通过 DoH (DNS over HTTPS) / DoT 结合客户端规则防止 DNS 泄漏的方法。

技术百科组 2026-09-15

在网络访问过程中,域名系统(DNS)扮演着将人类可读的域名(如 google.com)解析为计算机可读的 IP 地址(如 142.250.x.x)的关键角色。然而在复杂网络环境中,DNS 污染与 DNS 泄漏 是导致网站无法打开或隐私泄露的两大主因。

什么是 DNS 污染 (DNS Pollution)

DNS 污染(又称 DNS 投毒)是网络防护设备在公网出口上针对明文 DNS 请求(UDP 53 端口)进行实时监测与伪造响应的技术。

  • 工作过程:当用户向本地 DNS 发起对被阻断域名的查询请求时,检测设备会在真实的 DNS 服务器响应返回之前,抢先向用户返回一个错误的、伪造的 IP 地址。
  • 后果:用户的浏览器尝试连接该错误 IP,导致页面提示“连接超时”或“无法访问”。

什么是 DNS 泄漏 (DNS Leak)

DNS 泄漏是指:即使你已经开启了代理软件,系统在解析域名时,DNS 请求依然通过未加密的本地运营商 DNS 服务器发了出去。

  • 隐私风险:你的 ISP(网络服务提供商)虽然无法看到你传输的具体加密内容,但可以通过 DNS 解析日志清楚地知道你试图访问哪些网站域名。
  • 访问失败:若发往本地 ISP 的请求遭到 DNS 污染,即使后续建立了代理通道,也会因解析到错误的 IP 而无法正常连通。

主流防御与解决方案

为了解决 DNS 污染与 DNS 泄漏,现代代理工具采用了以下技术组合:

  1. DoH (DNS over HTTPS) / DoT (DNS over TLS):将 DNS 请求封装在加密的 HTTPS 或 TLS 协议中传输,使中间设备无法识别和篡改 DNS 报文内容。
  2. 假 IP 模式 (Fake-IP / Redir-Host):代理客户端在本地直接给域名分配一个虚拟的假 IP(如 198.18.x.x),浏览器直接向假 IP 发起连接,真实域名解析过程推迟到代理节点远端进行,从而彻底免疫本地 DNS 污染。

FAQ

Q: 为什么开启了代理,在 DNS 泄漏测试网站上依然能看到本地运营商?
A: 可能是客户端中未开启“分流 DNS”或“远程 DNS 优先”设置。建议在客户端配置中检查 DNS 模块,确保代理域名的 DNS 解析交由代理通道或加密 DNS 处理。