DNS leak怎么查和修复:VPN、DoH与IPv6排查步骤
简答:DNS leak指DNS查询没有沿着你预期的VPN或加密DNS路径发送,而是被系统、路由器、浏览器DoH或IPv6分流。最快做法是:连接VPN后先运行一次DNS leak测试,再对照解析器所属组织;若出现ISP或未选择的解析器,依次检查VPN防泄漏、浏览器Secure DNS、IPv6和多网卡设置。本文按2026-10界面核对。
定义:DNS leak(DNS泄漏)是域名解析请求绕过预期的VPN或DNS路径,交给其他解析器处理的情况。
先做一次DNS leak测试:不要只看系统配置
DNS leak测试的核心不是查看设备“准备使用”哪个DNS,而是观察实际发起查询的解析器。dnsleak.dev说明,测试会让浏览器解析临时主机名,再根据请求到达的解析服务器识别实际响应者;它还提示,测试结果可能出现部分泄漏,且测试数据会保留约十分钟。
- 先记录当前状态:是否连接VPN、连接的是Wi-Fi还是移动网络、浏览器是否启用了Secure DNS。
- 连接VPN后打开DNS leak测试页面,先运行普通测试;如果页面提供深度测试,再运行一次。
- 记录每个解析器的名称、所属组织、国家或地区,以及是否出现ISP名称。
- 断开VPN后再测一次,用来确认测试页面本身能看到连接变化;不要把断开VPN的结果当作泄漏证据。
| 测试结果 | 通常如何理解 | 下一步 |
|---|---|---|
| 只出现VPN所属解析器 | 与VPN DNS路径一致,暂未发现明显DNS泄漏 | 继续检查IPv6、浏览器DoH和分流应用 |
| 出现ISP解析器 | 可能仍有查询走物理网卡、路由器或系统默认DNS | 检查VPN的DNS防泄漏开关、IPv6和多网卡 |
| 出现公共DNS | 不一定代表泄漏,可能是你主动选择的DNS,也可能是浏览器或路由器接管 | 核对该解析器是否由当前VPN或你本人选择 |
| 多个解析器混合出现 | 可能存在分流、缓存、IPv4/IPv6路径不同或间歇性泄漏 | 重复测试并分别关闭DoH、IPv6和其他网络接口定位 |
仅凭“国家不同”不能判定泄漏。dnsleak.dev明确指出,解析器来自其他国家时,可能是你主动选择的服务,也可能是未预期的路径;判断关键是所属组织和你的配置是否一致。
DNS leak、IP leak和WebRTC leak不是一回事
DNS leak关注的是“谁替你查询域名”;IP leak关注的是“网站看到的出口IP是否仍是原网络”;WebRTC leak则与浏览器实时通信建立连接时暴露的地址候选有关。三者可能同时出现,也可能只有其中一种异常。
- DNS leak:测试页面显示ISP或未选择的解析器,说明域名查询路径需要排查。
- IP leak:出口IP仍属于原ISP,说明隧道或路由没有覆盖预期流量;这不能单凭DNS测试判断。
- WebRTC leak:WebRTC的ICE/STUN机制会收集连接候选,候选地址可能向网页应用暴露额外的网络信息,详见MDN对RTCIceCandidate地址的说明。
HTTPS主要保护网页传输内容,不能自动证明DNS查询由正确的解析器处理。DoH(DNS over HTTPS)会把DNS请求放进加密的HTTPS连接中,但它仍然需要确认请求发给谁;MDN对DoH的定义也强调,DoH解决的是DNS传输的加密与完整性问题。
按平台修复:Windows、macOS、Android与iPhone
Windows:先查所有网卡,再清缓存
- 导入或开启:在VPN客户端中开启DNS防泄漏、阻止隧道外DNS或类似选项;名称以客户端当前界面为准。
- 检查:以管理员身份打开命令提示符,运行
ipconfig /all,查看物理网卡、虚拟网卡和IPv6配置中的DNS服务器。微软文档说明,该命令会显示所有适配器的完整TCP/IP配置。 - 验证:运行
ipconfig /flushdns清除DNS客户端缓存,重新连接VPN后再次测试;同时关闭暂不用的Wi-Fi、以太网、虚拟网卡,排除多接口并行解析。
ipconfig /all
ipconfig /flushdns
nslookup example.com如果配置看起来正确但测试仍显示ISP,说明“配置意图”与“实际查询路径”不一致,应优先检查VPN客户端、浏览器Secure DNS和IPv6,而不是反复更换公共DNS。微软的DNS客户端排障文档也建议先核对IP配置、DNS服务器和连接状态。
macOS:检查当前网络服务的DNS列表
- 导入或开启:在VPN客户端中开启DNS防泄漏或隧道内DNS选项。
- 检查:打开“系统设置—网络”,选择当前Wi-Fi或以太网服务,进入“详细信息—DNS”,核对DNS服务器列表。Apple说明,这里可添加或移除IPv4、IPv6 DNS服务器。
- 验证:断开并重新连接VPN,再运行测试;若有多个网络服务或旧VPN配置,逐个停用后复测。
设置入口可参考Apple的Mac DNS设置文档。不要仅因列表里出现公共DNS就直接判定泄漏,必须与实际测试中的解析器所属组织交叉核对。
Android:对照Private DNS与浏览器Secure DNS
- 导入或开启:进入“设置—网络和互联网—Private DNS”,按设备提供的“关闭、自动或指定提供商主机名”选项检查;Google说明,Private DNS只保护DNS问答,不会保护其他流量。
- 检查:在Chrome中进入“设置—隐私和安全—使用安全DNS”,确认它是否启用以及是否指定了自定义服务商。
- 验证:连接VPN后分别测试Chrome和其他浏览器;若只有Chrome结果不同,优先检查Chrome的Secure DNS是否绕过了系统或VPN的DNS路径。
Android不同厂商的菜单名称可能不同,Google的Private DNS说明给出了通用入口和三种状态。
iPhone:核对VPN与DNS配置描述文件
- 导入或开启:在VPN应用中重新连接,并确认其DNS保护或全流量模式没有被关闭。
- 检查:打开“设置”中的VPN、通用和设备管理相关入口,查看是否存在旧VPN、DNS配置或组织配置;不要删除工作或学校设备的配置前先确认用途。
- 验证:连接VPN后用同一浏览器完成普通与深度测试,再切换移动网络和Wi-Fi各测一次。若两种网络结果不同,记录网络类型、解析器组织和时间。
Apple的设备部署文档显示,受管理设备可以通过DNS设置把查询导向加密DNS服务器,并可配置按需规则;因此iPhone上看不到传统的DNS服务器列表,并不等于没有DNS配置。
浏览器DoH、IPv6和路由器为什么会造成误判
浏览器Secure DNS(通常是DoH)可能独立于操作系统解析域名。Chrome帮助中心说明,Secure DNS默认可能处于自动模式,遇到问题时会回退到未加密解析;选择自定义提供商后,行为又会不同。排查时应记录浏览器设置,而不是只看系统DNS。
- Chrome:进入“设置—隐私和安全—安全—使用安全DNS”,先记录当前模式;如果VPN要求由客户端接管DNS,可暂时关闭Chrome自定义Secure DNS后复测。
- Firefox:进入“设置—隐私与安全—DNS over HTTPS”,查看保护级别。Mozilla说明,默认保护可能在VPN、企业策略或网络条件影响下停用DoH;最大保护或自定义模式可能持续使用指定解析器。
- IPv6:若VPN只接管IPv4,而系统或浏览器仍通过IPv6发起解析,测试结果可能混合。不要直接永久关闭IPv6;先查看VPN是否明确支持IPv6,再用关闭IPv6后的临时复测定位。
- 路由器:检查路由器是否强制指定DNS、拦截53端口或为所有设备提供自定义解析。修改路由器前记录原配置,并保留回滚方式。
Firefox的官方DoH设置说明列出了默认、增强、最大、自定义和关闭等保护级别;Chrome的官方安全设置说明则解释了自动模式与自定义提供商的差异。
复测记录模板:用证据判断是否真的修好
DNS leak测试通常只是当前浏览器会话的快照,不能覆盖所有后台应用、分流规则、其他设备或此前已经完成的查询。因此修复后应至少记录两轮结果,并在不同网络接口下复测。
日期:2026-10-26
设备与系统:
网络:Wi-Fi / 以太网 / 移动网络
VPN:已连接 / 未连接
浏览器及Secure DNS状态:
IPv6:开启 / 关闭 / 未知
普通测试解析器:
深度测试解析器:
解析器所属组织:
出口IP所属组织:
结论:仅预期解析器 / ISP出现 / 多解析器混合
已采取措施:
复测时间与结果:- 先断开VPN测试一次,再连接VPN测试两次,确认结果是否稳定。
- 分别测试Wi-Fi与移动网络,避免把某个路由器的DNS行为误认为设备本身问题。
- 若只有某个浏览器异常,优先检查DoH、扩展和代理设置;若所有浏览器都异常,优先检查VPN、系统、IPv6和路由器。
- 如果DNS结果正常但出口IP仍异常,应转向IP路径排查;如果出口IP正常但解析器异常,则重点处理DNS路径。
结论标准应以“解析器是否符合你的预期配置”为核心,而不是以国家、城市或单次测试页面的颜色提示为核心。遵守所在地法律与服务条款。
常见问题
不使用VPN也会出现DNS leak吗?
可以。DNS leak不只发生在VPN场景,也可能由ISP拦截、路由器强制DNS、设备内置解析或浏览器DoH把查询交给了你没有预期的服务商造成。没有VPN时,应先明确自己希望使用的解析器,再根据测试结果判断是否偏离。
测试页面显示公共DNS,就一定是DNS泄漏吗?
不一定。公共DNS可能是你主动设置的,也可能由VPN、浏览器、路由器或系统配置提供。应核对解析器名称、所属组织和当前配置;不能只依据国家、城市或IP地址判断。
DNS leak测试显示VPN解析器,但后台应用仍可能泄漏吗?
可能。浏览器测试主要反映当前浏览器会话,无法代表所有后台应用、分流规则或其他网络接口。修复后应在Wi-Fi、移动网络和不同应用场景下重复验证。
把DNS改成公共DNS能彻底修复DNS leak吗?
不能保证。更换DNS只是改变接收查询的一方,如果查询仍绕过VPN、浏览器或系统预期路径,问题仍然存在。应定位实际被绕过的组件,再调整VPN、DoH、IPv6或路由器配置。
Chrome和Firefox的DNS结果为什么可能不同?
两者可能采用不同的Secure DNS或DoH策略。Chrome有自动和自定义Secure DNS模式,Firefox也有默认、增强、最大和自定义保护级别,因此应分别查看浏览器设置后再比较测试结果。
DNS正常是否代表IP地址和WebRTC也没有泄漏?
不代表。DNS测试只检查域名解析路径;出口IP和WebRTC候选地址属于不同问题,需要分别验证。WebRTC使用ICE、STUN或TURN建立连接,网页应用可能从候选地址中获得额外网络信息。
发现ISP解析器后,应该先关闭IPv6还是先改DNS?
先不要永久关闭IPv6或盲目更换DNS。建议先记录VPN、浏览器DoH、路由器和网卡状态,再临时关闭IPv6复测;如果结果变化明显,再核对VPN是否支持IPv6覆盖,并按需恢复或调整配置。