梯子学堂

DNS 泄露是什么:为什么用了代理还会暴露访问记录

2026-10-21 更新约 6 分钟读完进阶
先说结论

DNS泄露是指你的域名查询没有经过代理,而是由本地网络的 DNS 服务器处理,使本地网络仍能看到你查询了哪些域名,即使后续连接走了代理。成因多是客户端没有接管 DNS 或分流规则设置不当。它与 DNS 污染不同:污染是返回了错误结果。可用检测工具自查,并在客户端里调整。

DNS泄露是什么?很多人以为,开了代理,上网痕迹就全被隐藏了。实际上,有一类信息可能“漏”在代理之外:**你要访问哪个域名。**这就是 DNS 泄露。它不会让别人看到网页里的内容,却可能让本地网络知道你查询过哪些网站,而这恰恰是不少人开代理想避免的。下面依据 Cloudflare 对 DNS 的科普,把 DNS 的作用、泄露的成因、与污染的区别,以及自查和修正的入口讲清楚。

先弄懂 DNS:它在上网过程中做什么

你输入一个网址,比如某个网站的域名,电脑并不知道它在哪台服务器上,需要先去问一个“电话簿”:这个域名对应哪个 IP 地址?这个查询过程就是 DNS 解析。

步骤 做什么
1 你访问一个域名
2 设备向 DNS 服务器发起查询:这个域名的 IP 是多少
3 DNS 服务器返回 IP 地址
4 设备根据 IP 地址,去连接真正的服务器

注意:第 2 步的查询,和第 4 步的连接,是两个独立的动作。代理接管了第 4 步,不代表第 2 步也被接管。术语见 DNS 泄露 一条。

什么是dns泄露:哪一步漏了

情形 域名查询去了哪里 结果
正常:查询也经过代理 由代理一侧的 DNS 处理 本地网络看不到你查询了什么
泄露:查询没经过代理 由本地网络的 DNS 服务器处理 本地网络能看到你查询的域名

打个比方:你托人去另一个城市买东西(代理),但出门前在本地的问讯处问了一圈“那家店的地址是什么”(DNS 查询)。人虽然去了远方,问讯处却记下了你问的是哪家店。

泄露的是域名信息,而不是网页内容。网页内容是否被看到,取决于连接是否加密。

dns泄漏的常见成因

成因 说明
客户端只代理了连接,没有接管 DNS 域名查询仍走系统默认的 DNS
分流规则里,某些域名被设为直连,其查询也走本地 规则设置与预期不符
系统或浏览器自己配置了 DNS 绕过了客户端的设置
应用自己做了解析 某些应用不使用系统 DNS
虚拟网卡模式没有开启或设置不当 部分流量未被接管

分流规则的概念读 规则分流是什么,接管全部流量的模式读 TUN 模式是什么。

与dns污染的区别

很多人把这两个词混着用,其实关注的方向完全不同:

对比项 DNS 泄露 DNS 污染
问题的本质 查询被谁看到 查询得到了错误的结果
影响 隐私:域名信息暴露给本地网络 可用性:访问到错误地址或打不开
表现 通常没有任何异常,需要检测才知道 网站打不开或打开了错误的页面
处理方向 让域名查询也走代理 使用可靠的解析方式

两者可能同时存在:一次域名查询既被本地网络看到,又得到了错误结果。判断时分开看,各自处理。

DNS泄露在哪些场景下更值得留意

场景 为什么值得留意
使用公共网络或他人管理的网络 网络管理者可能看到域名查询
公司或学校的网络 网络可能有日志,查询记录会留在其中
对访问记录比较在意 域名本身也是隐私信息
同时使用多个代理或客户端 设置叠加,更容易出现遗漏

如果你在家里的网络、只是普通浏览,影响通常较小,了解并按需处理即可,不必为此焦虑。

怎么自查

步骤 做什么
1 开启代理
2 使用 DNS 泄露检测工具,查看显示的 DNS 服务器
3 判断归属:是代理一侧的,还是本地运营商的
4 换节点、换模式(系统代理与 TUN)各测一次
5 记录结果,修改设置后再测

站内有专门的教程:DNS 泄露怎么检测。要强调的是:一次检测只反映当时的状态,换网络、换模式后结果可能不同,也不能证明永远没有泄露。

怎么修正:几个方向

具体选项因客户端而异,大致思路有:

  1. 在客户端里开启 DNS 接管,让域名查询也通过代理一侧处理;
  2. 检查分流规则,确认需要走代理的域名,其查询也不走本地;
  3. 视情况开启虚拟网卡(TUN)模式,接管更多流量;
  4. 检查系统和浏览器里是否手动指定了 DNS,必要时改回默认;
  5. 修改后重新检测,确认效果。

修正的具体操作,以所用客户端的说明为准,比如 Clash TUN 模式设置。调整后如果出现部分网站打不开,说明设置与规则有冲突,读 系统代理开了没反应 排查。

修正之后,怎么确认真的生效

  1. 保持修改后的设置,重新做一次检测;
  2. 再换一个节点、换一种代理模式各测一次,因为不同模式下结果可能不同;
  3. 检测页面上显示的 DNS 服务器,若仍是本地运营商的,说明还有遗漏;
  4. 同时用常用的浏览器和应用访问几个网站,确认没有出现异常或打不开;
  5. 把修改前后的结果截图留存,下次出问题时可以对照。

关于风险,别夸大也别忽视

看法 更合理的态度
“泄露了就完了” 泄露的是域名查询,而非网页内容,影响因人而异
“我没有秘密,不用管” 域名记录本身也是隐私信息,了解并选择是否处理即可
“开了代理就绝对没有泄露” 取决于设置,需要检测

隐私是一个整体问题,DNS 只是其中一环,更全面的判断读 机场安全怎么判断。

几个常见的误解

  • **“DNS 泄露会暴露网页内容。”**暴露的是域名信息;
  • **“泄露和污染是同一回事。”**一个关乎隐私,一个关乎可用性;
  • **“开了代理就不会泄露。”**取决于客户端设置;
  • **“检测一次没问题就永远没问题。”**换网络、换模式要重测;
  • **“修了设置就一劳永逸。”**更新客户端或换节点后,建议再检测一次。

下一步

先用站内教程做一次DNS泄露检测,看看你当前的设置是什么状态;如果有泄露,再按上面的方向调整。想按条件筛选机场,用 选机场向导。DNS泄露不是一个吓人的词,它只是提醒你:代理管的是“连接”,而“查询”需要你单独确认。

这篇没有覆盖的
  • 本文用通俗方式解释 DNS 与泄露原理,不涉及 DNS 协议实现细节,细节请以专业资料为准。
  • 检测结果受网络环境影响,一次检测不能代表长期状态,也不能证明绝对没有泄露。
  • 具体的修正选项因客户端而异,请以所用客户端的说明为准,本文只讲思路。

本文引用的官方来源

这篇的几个常见问题

DNS 泄露到底泄露了什么?

泄露的是你查询了哪些域名这一信息,而不是网页内容。域名查询如果由本地网络的 DNS 服务器处理,本地网络就能看到你想访问哪些网站,即使之后的连接走了代理。网页内容是否可见,取决于连接是否加密,与 DNS 泄露是两回事。

DNS 泄露和 DNS 污染是一回事吗?

不是。泄露讲的是查询去了哪里,被谁看到;污染讲的是查询得到了错误的结果,比如把域名解析到了不对的地址。两者可能同时出现,也可能只出现一个,处理办法也不同。一个关乎隐私,一个关乎能否正常访问。

用了代理就不会 DNS 泄露吗?

不一定。代理转发的是连接,域名查询是否也经过代理,要看客户端的设置和分流规则。有的设置下,域名查询仍由本地网络处理,就会出现泄露。可以用站内的检测方法自查,再根据结果调整客户端的 DNS 相关设置。

怎么检测自己有没有 DNS 泄露?

在代理开启的状态下,使用 DNS 泄露检测工具查看显示的 DNS 服务器归属,如果显示的是本地运营商的服务器,说明查询没有走代理。站内有对应的检测教程,建议在不同网络和不同模式下各测一次,并记录结果。