DNS泄漏是指设备把网站查询请求发到了加密的 VPN 隧道之外,通常会交给运营商或其他 DNS 解析器处理。这样一来,网站名称就可能被看到,即使网站本身看到的仍是 VPN 的 IP 地址。
好消息是,DNS泄漏可以测试,也通常可以修复。本文会解释 DNS 是什么、为什么 DNS 请求很敏感、DNS 泄漏常见成因、如何做可靠的 DNS 泄漏测试,以及在电脑、手机和浏览器上怎么降低风险。
DNS 是什么,为什么它很重要?
DNS 是 Domain Name System 的缩写,可以理解成互联网的地址簿。你在浏览器里输入网站名后,设备需要先找到这个名字对应的服务器地址,页面才能加载出来。
举个例子,域名更容易被人记住,但网络传输靠的是数字形式的 IP 地址。DNS 的作用,就是把你输入的名字转换成设备能连接的地址。
一次正常的 DNS 查询,流程大致如下:
- 你输入域名,或打开一个应用。
- 设备向 DNS 解析器询问这个域名指向哪里。
- 解析器返回 IP 地址或相关记录。
- 设备连接目标服务器并加载服务。
关键的隐私点在于,DNS 请求会暴露你的意图。DNS 解析器通常看不到完整网页地址、具体文章内容,或者加密 HTTPS 会话里的全部内容,但它往往能看到你查询的域名,比如新闻网站、银行、健康论坛、办公工具或流媒体服务。
这也是为什么 DNS 处理属于 VPN 隐私的一部分。VPN 不只是改变网站看到的 IP 地址,它还应该防止日常的查询流量从保护通道里跑出去。如果你刚接触 VPN 基础知识,可以先看什么是 VPN,了解隧道是怎么工作的。
什么是 DNS 泄漏?
DNS 泄漏,指的是你的主流量和 DNS 查询走了不同的路径。网页流量可能已经通过 VPN 服务器转发,但 DNS 查询仍然发给了运营商、移动网络、设备里手动设置的公共解析器,或者浏览器自己选的解析器。
这会造成隐私缺口。你访问的网站也许只看到 VPN 服务器的 IP 地址,但隧道外的 DNS 解析器仍然能看到你请求了哪些域名。如果这个解析器属于你的运营商,运营商可能就能从 DNS 元数据里推测出大量浏览行为。
DNS 泄漏不一定意味着整个 VPN 彻底失效。它可能发生在 VPN 图标已经显示连接,且你对外显示的 IP 地址也已经变成 VPN 服务器的时候。这也是为什么 DNS 泄漏如果不专门测试,很容易被忽略。
在 Crispy VPN 里,应用连接后,DNS 请求会和 VPN 流量一起经过隧道转发。这样,DNS 查询不会回落到你正在使用的本地网络上。
DNS 泄漏可能暴露什么
- 域名:设备请求解析的网站和服务。
- 时间点:这些请求发生的时刻。
- 网络环境:请求来自家庭运营商、公司网络、酒店网络、移动网络,还是其他本地网络。
不过,DNS 本身通常不会暴露安全 HTTPS 页面里的全部内容。它也不会让你匿名。你登录过的网站仍然可以识别你的账号,追踪器也可能继续使用 Cookie 或浏览器指纹。但 DNS 泄漏仍然值得避免,因为它会泄露你访问范围的线索。
DNS 泄漏是怎么发生的?
DNS 泄漏通常来自配置冲突。现代操作系统、浏览器、VPN 应用和网络适配器都会影响 DNS 行为。如果这些层级彼此不一致,查询就可能走上一条你没预期的路径。
操作系统的 DNS 设置
操作系统会决定每个网络接口使用哪些 DNS 服务器。VPN 连接后,通常会新增一个虚拟网络接口,并把 DNS 流量导向这个接口。如果系统仍然沿用旧的 Wi-Fi 或以太网 DNS 服务器,就可能出现泄漏。
这种情况在频繁切换网络、睡眠后唤醒、连接需要登录的公共热点,或者手动改过网络设置后更常见。重新连接 VPN 往往能清掉临时路由问题,但持续性的泄漏还是要检查设置。
IPv6 的处理
IPv6 是一种较新的互联网地址体系,可以和 IPv4 并行使用。DNS 可以解析 IPv4 和 IPv6 记录。如果 VPN 或设备把 IPv4 流量路由正确了,但让 IPv6 DNS 或 IPv6 流量继续走本地网络,也可能形成泄漏。
这也是为什么测试时要检查整条连接,而不只是看一个可见的 IPv4 地址有没有变化。干净的结果,意味着 DNS 服务器和对外显示的 IP 信息都符合你想走的 VPN 路径。
手动设置的 DNS 服务器
很多人会在设备、路由器或浏览器里自定义 DNS 服务器,用来提升速度、过滤内容或提高稳定性。但这些设置可能覆盖 VPN 应用提供的 DNS。如果自定义解析器是在隧道外被访问到的,那就是 DNS 泄漏。
手动 DNS 不一定不好,但它必须和你的隐私目标兼容。使用 VPN 时,最稳妥的默认做法是让 VPN 应用接管 DNS,除非你有明确需求,而且知道这些查询最终会去哪里。
浏览器的 DNS over HTTPS
有些浏览器提供 DNS over HTTPS,常被称为安全 DNS。它会加密浏览器和 DNS 提供商之间的查询。这样可以防止本地网络看到 DNS 内容,但也可能绕过 VPN 应用原本使用的 DNS 设置。
如果浏览器的 DNS over HTTPS 指向了 VPN 路径之外的解析器,泄漏测试可能会显示那个解析器,而不是 VPN 的 DNS。它虽然加密了,但并没有走 VPN 预期的 DNS 处理方式。浏览器扩展也可能有自己的路由规则,所以浏览器内测试和整机测试的结果可能不同。
分流规则
分流功能会让特定应用或网站走不同路径,而不是和其他流量一起走 VPN。它很适合把一部分流量放进 VPN,另一部分留在外面。但它也可能解释一些看起来意外的 DNS 结果。
如果某个应用或网站被排除在 VPN 之外,那么它的 DNS 也可能被排除,具体要看平台和实现方式。Crispy VPN 在 Android 上支持按应用分流,在 iPhone 和 iPad 上支持按网站分流,在浏览器扩展中也支持按网站分流。如果你启用了分流,先检查规则,再判断是不是所有 DNS 请求都受保护。想看更细的说明,可以读什么是分流。
如何测试 DNS 泄漏
DNS 泄漏测试的核心,是看哪些 DNS 解析器能看到你的查询请求。基本思路是对比 VPN 关闭和开启时的结果。如果 VPN 已连接,但结果里仍然出现你的运营商或本地网络 DNS 服务器,那大概率有泄漏。
测试时要尽量贴近你真实的使用场景。如果你主要在某个浏览器里上网,就在那个浏览器里测。如果你用的是桌面应用或手机应用,也要测整台设备的连接。平时如果会在 Wi-Fi 和移动数据之间切换,也都要分别测。
DNS 泄漏测试清单
- 断开 VPN。 打开 DNS 泄漏测试页面,记下显示的 DNS 提供商名称、国家和 IP 地址,这就是基线。
- 连接 VPN。 选择你平时使用的服务器位置,等应用显示已连接。
- 刷新测试页面。 先跑标准测试,如果有扩展测试也一起跑。
- 对比结果。 VPN 连接后,不应该再看到你的运营商、公司、学校、酒店或移动网络 DNS 服务器。
- 检查对外 IP。 用 IP 查询页面确认你的公网 IP 也已经变成 VPN 位置。你可以用什么是我的 IP来做这一步。
- 切换网络后重复测试。 换 Wi-Fi、切到移动数据,或者设备从睡眠中唤醒后,再测一次。
好的结果不一定会直接显示你的 VPN 品牌。DNS 基础设施可能使用不同的提供商名称、机房名称或中继地址。关键是结果里不要出现你本地的 ISP,或者你本来不想用的其他解析器。
如果你使用 Crispy VPN,先连接应用,再运行测试。DNS 应该会和 VPN 流量一起走隧道。如果连接后仍然看到 ISP DNS,把它当作设备或浏览器配置问题,继续往下排查。
如何修复 DNS 泄漏问题
正确的修复方式取决于原因。先从影响最小的步骤开始,再去检查平台和浏览器设置。
先试这些快速修复
- 断开后重新连接 VPN。 这样可以刷新路由和 DNS 设置。
- 切换 VPN 服务器位置。 新连接有时能清掉旧的网络状态。
- 重启应用和浏览器。 浏览器可能会缓存 DNS 决策,直到重启才释放。
- 重启设备。 这会重置网络接口和旧的 DNS 分配。
- 更新 VPN 应用和操作系统。 DNS 路由相关问题常常通过更新修复。
检查手动 DNS 设置
查看你的 Wi-Fi、以太网和移动网络设置。如果你手动加过 DNS 服务器,先临时删除,改回自动获取,然后重新连接 VPN,再做一次 DNS 泄漏测试。
如果泄漏消失了,说明手动 DNS 覆盖了 VPN。你可以再决定要不要保留这个自定义 DNS,但不要因为它看起来熟悉或经过加密,就默认它更私密。
检查浏览器的安全 DNS
打开浏览器的隐私或安全设置,找到安全 DNS 或 DNS over HTTPS。如果它启用了某个特定提供商,可以先暂时关闭,或者改成使用系统默认值。然后重新连接 VPN,重启浏览器,再测一次。
如果只有某一个浏览器泄漏,而其他应用都测试正常,这一步尤其重要。那种情况下,VPN 可能在系统层面工作正常,只是浏览器自己选了别的解析器。
检查分流规则
如果你开启了分流,看看浏览器、测试网站或应用是不是被排除在 VPN 之外。把排除规则去掉,再测一次。结果在关闭分流后发生变化,并不神秘,只是说明规则按你设置的方式在工作。
优先使用 VPN 应用,而不是不受支持的替代方案
不受支持的路由器方案、随手下载的配置文件,或者第三方网络工具,都会让 DNS 路由更难预测。Crispy VPN 提供 iPhone、iPad、Mac、Windows、Linux、Android、Apple TV、Android TV 和 Google TV 应用,也提供 Chrome、Edge 和 Firefox 浏览器扩展。建议从下载页获取正确应用,再直接测试。
在受支持的设备上,Crispy VPN 每台服务器都使用 WireGuard。WireGuard 是一种现代 VPN 协议,代码库更小,性能更好,在移动设备上也更省电。如果你想了解协议背景,可以看什么是 WireGuard。
不同设备上的 DNS 泄漏防护
DNS 泄漏防护的重点,是让 VPN 应用保持路由控制权,并避免冲突的 DNS 设置。不同设备上的做法会有差异。
Windows、Mac 和 Linux
桌面系统通常会有多个网络接口,比如 Wi-Fi、以太网、虚拟网卡,有时还有工作配置文件。如果出现 DNS 泄漏,先检查网卡的 DNS 设置,删掉旧的手动解析器,再重新连接 VPN。
在 Windows、Mac 和 Linux 上,kill switch 也能帮助减少 VPN 断开时的暴露。Crispy VPN 在这些桌面平台提供可选的 kill switch,Windows 还可以开启可选的 Lockdown mode。kill switch 不是 DNS 泄漏防护本身,但它可以在连接中断时阻止流量继续走 VPN 外面。
iPhone、iPad 和 Android
手机和平板经常在 Wi-Fi、移动数据、酒店网络和需要登录的热点之间切换。如果你把 VPN 当作隐私工具,最好在网络变化后再测一次。也要检查私有 DNS、设备管理配置文件或安全类应用是否改动了 DNS 行为。
在 Android 上,系统里的 Always-on VPN 和 Block connections without VPN 可以帮助防止流量意外跑出 VPN。iPhone 和 iPad 上则要保持 VPN 应用更新,并在某个网站行为异常时检查网站分流规则。
浏览器和扩展
浏览器是最常见的 DNS 结果混乱来源,因为它们可能会用自己的安全 DNS 设置。如果泄漏只发生在 Chrome、Edge 或 Firefox 里,先查浏览器 DNS 设置,再去动整台设备。
浏览器扩展只覆盖浏览器流量,不会接管设备上的所有应用。这在你只需要保护网页浏览时很方便,但它和完整的设备级 VPN 连接不是一回事。想了解这一区别,可以看VPN 浏览器扩展。
电视设备
电视平台的设置更简单,但可用的网络控制也更少。Crispy VPN 支持 Apple TV 和 Android TV 或 Google TV,登录时可以用手机扫描二维码。如果你在电视上排查 DNS,先在手机或笔记本上测试同一个网络,再回到电视应用重新连接。
VPN 能和不能从 DNS 里隐藏什么
配置正确的 VPN 应该把 DNS 请求留在加密隧道里。这样,本地 Wi-Fi 运营者、ISP 或移动网络就看不到明文 DNS 查询,也能让你的 DNS 路径与所选 VPN 服务器保持一致。
Crispy VPN 还有不记录活动日志的政策,并采用双中继设计,把“你是谁”和“你做了什么”分开处理。这一点很重要,因为 DNS 隐私不只是隧道问题,也和服务本身如何减少不必要关联有关。
不过,VPN 并不会让你匿名。它不能单独阻止恶意软件或钓鱼,也不能阻止网站在你登录账户后认出你。浏览器里已经存在的追踪 Cookie 也不会因为 VPN 自动消失。
可以把 DNS 泄漏防护看成一层保护。它能把网站查询元数据尽量挡在本地网络和运营商之外。再配合合理的浏览器设置、谨慎的账号使用、定期更新,以及清楚了解 VPN 能保护什么,效果会更好。
如果你刚装完 VPN,检查时也值得不只看 DNS。公网 IP、WebRTC 表现、kill switch 设置和浏览器配置都会影响隐私。下一步可以看我的 VPN 在正常工作吗,里面会带你做更全面的检查。



