跳到主要内容

现代浏览器里有一个通常叫“安全 DNS”或“DNS over HTTPS”的设置,它会通过加密通道,把查询网站地址的请求发给浏览器自己选的解析器。VPN 同样会改变这些查询的传输方式。两者同时开启时,哪个说了算、谁真正看得到你的查询、为什么公司网站或路由器页面突然打不开,并不是一目了然的。

本文只谈这种相互作用。如果你想先了解域名系统的基础,请读 DNS 是如何工作的;如果想从更大的角度比较加密 DNS 与完整 VPN,请看 DNS over HTTPS 与 VPN 的区别。这里我们看的是一台电脑上的实际情形:浏览器有自己的 DNS 设置,VPN 有自己的 DNS 处理,以及怎样的选择能让二者保持一致。

一台电脑上的两个解析器

每次查询都从一个问题开始:这个名称对应哪个地址?在大多数电脑上,有两个地方可以提出这个问题。

  • 系统解析器。 操作系统保存一份 DNS 设置,通常由网络自动下发,比如家里的路由器或酒店网络。没有自带设置的程序都用它。VPN 连接后,VPN 软件通常会替换或添加系统的 DNS 服务器。
  • 浏览器解析器。 开启安全 DNS 后,浏览器会跳过系统设置,通过 HTTPS 封装(DNS over HTTPS),有时是 TLS,与它自己选定的 DNS 服务商通信。HTTPS 形式由 RFC 8484 定义。

两者可以同时运行。你的浏览器可能用自己的解析器,而邮件程序、聊天应用和系统更新程序用系统的那一个。这种分工正是本话题的核心:VPN 能指挥系统解析器,但已经配置了服务商的浏览器可能无视这个指挥。

这是否意味着查询离开了隧道?通常没有。在全隧道 VPN 下,设备上的所有网络流量,包括浏览器的加密查询,都会先进入隧道到达 VPN 服务器。浏览器选的服务商看到的来源是 VPN 服务器的地址,而不是你家的地址。变化的并不是查询在本地网络上是否加密,而是 由谁来回答 以及 哪些名称能被回答。

四种组合及其含义

浏览器安全 DNS VPN 谁能看到你的查询 常见效果
关 关 你的网络及其 DNS 服务器 查询在本地路径上可读
开 关 你选择的 DNS 服务商 本地路径只看到发往解析器的加密流量,但仍看得到你连接了哪里
关 开 VPN 使用的 DNS 服务器 查询在隧道内传输,由 VPN 的设置决定回答者
开 开 你选择的 DNS 服务商,看到的是 VPN 的地址 查询在隧道内,但内部名称可能失败,且解析器与 VPN 的不同

最后一行最容易让人意外。从安全角度看并没有什么“坏掉”,只是你的 DNS 现在由你在浏览器里选的服务商处理,而不是 VPN 分配的那一家。这在实际中有三个后果。

  1. 知道你浏览习惯的一方变了。 VPN 的 DNS 与公共解析器是不同的机构,条款也不同。选一个你放心的,并阅读它的隐私声明。
  2. 只在某个网络内部存在的名称可能失败。 公司内网、家里的打印机或路由器页面处在私有命名空间里,公共解析器回答不了。
  3. 与位置相关的结果可能不同。 有些网站会根据解析器所在位置返回不同的地址,浏览器拿到的可能不是离 VPN 出口最近的服务器。

怎样确认浏览器实际在用哪个解析器

不要想当然,做一个简短的测试就知道了。

  1. 先断开 VPN,打开一个 DNS 检测工具。 比如 EFF Cover Your Tracks 网站里与 DNS 相关的检测,或常见的 DNS 泄漏测试页。记下它报告的解析器名称。
  2. 连上 VPN,刷新同一个检测。 如果解析器与之前一样,说明浏览器在用它自己的服务商;如果变成了别的,说明用的是受 VPN 指挥的系统解析器。
  3. 切换浏览器里的设置。 关闭安全 DNS 重新检测,再打开。三组结果并排,就能清楚知道你的环境是怎么运作的。
  4. 换第二个网络重复一遍。 比如手机热点。如果不同网络下表现不同,通常和网络下发 DNS 的方式有关。

解析器名称不是 VPN 的,并不自动等于泄漏。真正有害的泄漏,是你以为已经隐藏、实际却暴露给本地网络或运营商的查询。浏览器选定、经隧道到达的服务商是一种选择,不是泄漏,但你应当清楚自己做过这个选择。想了解有害的那种泄漏长什么样,请读 什么是 DNS 泄漏。

在哪里找到这个设置

不同浏览器和版本的菜单名称不同,但主流浏览器的路径大致类似。

  • 基于 Chromium 的浏览器: 打开设置,进入“隐私和安全”,再进入“安全”,找到使用安全 DNS 的选项。通常可选“使用当前服务提供商”,或选一个具名的服务商。
  • Firefox: 打开设置,进入“隐私与安全”,滚动到 DNS over HTTPS 部分,选择保护级别,如关闭、默认、增强或最大。
  • Safari 和许多手机浏览器: 加密 DNS 由操作系统层面控制而不是浏览器,因此可能没有单独的开关。

关键的选择在于“使用系统 DNS”(或“当前服务提供商”,即交给系统或 VPN 决定)与“使用指定服务商”。前者尊重 VPN 的设置,后者会覆盖它。

该选哪种设置

没有唯一正确的答案,但下面的情形能指向合理的默认值。

你的情况 建议的浏览器设置 原因
在家使用,只在公共 Wi-Fi 上才开 VPN 开启安全 DNS,选你信任的服务商 没开 VPN 时也能得到帮助
要连接单位网络或内网 使用系统 DNS 内部名称才能继续工作
希望只让一家机构看到你的查询 VPN 开启时使用系统 DNS 由 VPN 决定解析器
想用特定的过滤解析器(家庭、安全) 开启安全 DNS 并指定该服务商 选择是明确的
排查某个网站打不开 暂时切换到系统 DNS 排除一个变量

如果你接受这种取舍,安全 DNS 加全隧道 VPN 的组合完全可以。只要记住:你现在要同时信任两方,也就是 VPN 和 DNS 服务商。

几个实际场景

酒店 Wi-Fi 上的旅行者。 小蓓到了新城市,连上酒店网络。酒店的登录页只能通过酒店网络自己解析的名称打开。此时安全 DNS 开着、VPN 还没连,页面打不开,因为浏览器去问公共解析器,而它不认识这个名称。她把安全 DNS 暂时改为“系统”,登录酒店页面,再连上 VPN,并把安全 DNS 改回去。这个顺序在 如何在酒店 Wi-Fi 上使用 VPN 中有更多说明。

上班族与内网。 马库斯连上公司的 VPN,却无法用名称访问内部维基,而同一个名称在别的程序里能用。原因是浏览器的安全 DNS 把这个名称发给了从没听说过它的公共解析器。他把浏览器改为使用系统 DNS,维基立刻就能打开了。依赖内部名称的公司通常会把这一点写进文档。

用过滤解析器的家庭。 一个家庭在浏览器里设置了具名的解析器,给孩子过滤不合适的网站。家长打开个人 VPN 后,过滤似乎在其他应用里失效了,却在浏览器里仍然有效,因为浏览器保留了自己的服务商。他们意识到这个过滤只覆盖浏览器,于是决定其他设备另行处理。

出问题时的排查清单

如果开了 VPN、安全 DNS 或两者之后,某个网站打不开,请按顺序排查。

  1. 直接输入数字地址能打开吗? 如果能,问题在名称解析。
  2. 把浏览器设为使用系统 DNS,再试。
  3. 断开并重新连接 VPN,然后重启浏览器,让它读取新的网络设置。
  4. 清除浏览器的 DNS 缓存。 大多数浏览器有内部页面可以做到,重启一次也行。
  5. 在另一个浏览器或隐私窗口里试试。 如果能打开,问题出在某个扩展或浏览器设置。
  6. 试试手机流量。 在流量下能打开、Wi-Fi 下打不开,说明是网络下发的本地 DNS 有问题。
  7. 查看 VPN 应用里自带的 DNS 选项(如果有),除非客服建议,否则保持默认。分流 DNS 一文解释了为什么有些名称会被刻意发往别处。

如果 VPN 连接正常,但所有页面都打不开,请看 VPN 已连接但没有网络,那里有更全面的检查项。

需要牢记的局限

  • 加密 DNS 不等于完全隐私。 你选的服务商能看到你的查询;每个连接的目的地址仍会被承载流量的一方看到,除非 VPN 把它们对本地网络隐藏。
  • VPN 不会阻止浏览器自身的追踪。 无论选哪种 DNS,Cookie 与指纹依然存在。
  • 并非所有网络都允许加密 DNS。 有些单位和学校会屏蔽它,或强制使用自己的解析器,浏览器此时会退回系统设置。
  • 设置会随更新变化。 浏览器更新可能重置或改名该选项,大版本更新后记得再检查。
  • 不要猜自己用的是哪家解析器。 在 VPN 开启与关闭时分别测试。

总结

浏览器的安全 DNS 与 VPN 是两个独立的控制项,二者都会影响 DNS。在全隧道 VPN 下,浏览器的加密查询仍然在隧道内传输,但浏览器可能绕开 VPN 自己的 DNS 服务器,这会改变由谁回答你的查询,也可能让内部或本地名称失效。请在 VPN 开启和关闭时分别测试你在用哪个解析器;需要内部名称正常时选系统 DNS,想要某个特定选择时就指定服务商。

如果想用短期的预付通行证试试这些设置,可以随时在 价格页面 比较各种选项。

常见问题

使用 VPN 时应该关闭浏览器的安全 DNS 吗?

不一定。如果 VPN 把全部流量都放进隧道,浏览器的加密查询本来就在隧道里传输。这个设置的影响在于它可能绕开 VPN 分配的 DNS 服务器,导致内部名称打不开,也改变了由谁来回答你的查询。按自己的需要选择,然后实际测试。

浏览器的安全 DNS 能让运营商看不到我访问了哪些网站吗?

它只隐藏 DNS 查询,不是全部。运营商仍能看到连接的目的地址,有时也能看到网站名称。VPN 则能把目的地从本地网络隐藏起来,因为所有流量都在隧道内。

开了安全 DNS 后,为什么路由器管理页这类本地地址打不开?

只存在于家庭或公司网络里的名称,公共 DNS 无法回答。浏览器把查询发给自己的服务商时,这些名称就解析失败。可以把浏览器改为使用系统 DNS,或者直接输入数字地址。

开着 VPN 时,安全 DNS 会造成 DNS 泄漏吗?

它会改变查询的去向,泄漏测试可能显示出与 VPN 不同的解析器。这不一定是有害意义上的泄漏,但你应该知道自己选了哪家服务商,并在开启 VPN 的状态下测试。

已经在用 VPN,还需要安全 DNS 吗?

两者作用不同。VPN 已经加密了你和 VPN 服务器之间的查询;安全 DNS 让你自选解析器,在没开 VPN 时也有帮助,所以更像额外一层,而不是必需品。

关于作者

Bob Kanokphon Thongdee,XPASS VPN 创始人

Bob Kanokphon Thongdee

  • XPASS VPN 创始人
  • eSIMonline.asia 联合创始人
  • 7 年以上网络营销经验
  • Cojourney Visa 与 Cojourney Travel 创始人

短途出行或忙碌的一个月,需要 VPN?

XPASS 提供按天数计算的预付通行证。一次付款,不会自动续费。

查看通行证

继续阅读

VPN 安全

DNS over HTTPS 与 VPN 有何不同?需要两者一起用吗

DoH 与 DoT 让本地网络看不到你的 DNS 查询,VPN 则包住你的全部流量。了解各自覆盖什么、Android 私人 DNS 如何配合,以及何时需要两者并用。

阅读约 9 分钟

VPN 基础

DNS 是如何工作的:从域名到 IP 地址

DNS 是把网站名称转换成设备实际连接的 IP 地址的查询系统。本文逐步讲解一次查询的过程,以及它为什么与隐私有关。

阅读约 9 分钟

VPN 安全

什么是 DNS 泄漏?

DNS 泄漏是指设备在 VPN 隧道之外查询网站地址。本文说明它为什么发生、如何检测,以及该怎么处理。

阅读约 10 分钟

VPN 安全

VPN 的 Split DNS(分流 DNS)是什么

Split DNS 让设备按域名选择不同的解析器:内部名称走 VPN,其他名称走平时的解析器。本文介绍原理、使用场景和检查方法。

阅读约 9 分钟

设备指南

如何修复 Windows 上的 VPN DNS 泄漏

为什么 Windows 会把 DNS 查询发到 VPN 之外,如何用系统自带工具确认泄漏,以及对大多数电脑有效的修复顺序。

阅读约 10 分钟