DNS 是如何工作的:从域名到 IP 地址
DNS 是把网站名称转换成设备实际连接的 IP 地址的查询系统。本文逐步讲解一次查询的过程,以及它为什么与隐私有关。
阅读约 7 分钟更新于 2026年10月15日作者:XPASS Editorial Team

互联网上的每台设备都靠一串数字,也就是 IP 地址来定位。人不擅长记数字,所以我们输入 example.com 这样的名称。把两者联系起来的查询服务就是域名系统(DNS)。每次你打开网站、发送邮件或使用应用,设备都会悄悄向 DNS 询问应该连接到哪里。
弄清这个查询过程,可以同时解释几件事:为什么网络明明正常,网站却可能打不开;为什么修改 DNS 设置后,上网会感觉变快或变慢;以及为什么即使使用了 VPN,DNS 仍然是隐私可能泄露的环节之一。
DNS 解决了什么问题
你的手机无法直接连接“example.com”。网络设备在数字地址之间传输数据,例如 IPv4 的 93.184.216.34,或 IPv6 更长的十六进制形式。DNS 就像一本公开的电话簿,把名称对应到这些地址。
它有两个好处。第一,名称保持不变,而地址可以更换:公司把网站迁到新服务器,只需修改一条 DNS 记录,访问者几乎察觉不到。第二,一个名称可以指向多台服务器,大型网站由此分散访问压力。如果想了解地址本身,可以阅读公网 IP 地址是什么。

一次查询涉及哪些角色
一次查询通常涉及四类服务器。你不会直接与它们全部通信,但了解各自的职责很有帮助。
- 存根解析器(stub resolver): 操作系统中的一小段软件。它向更大的解析器询问答案,并把结果短期保存下来,这就是缓存。
- 递归解析器(recursive resolver): 负责跑腿的服务器。默认由网络运营商或你所连接的 Wi-Fi 网络提供,你也可以改用公共解析器。它是能看到你查询内容的那一方。
- 根服务器和顶级域(TLD)服务器: 知道
.com、.org、.cn这类后缀由谁负责。 - 权威名称服务器: 由域名所有者或其委托方运营,保存该域名的真实记录。
输入网址后发生了什么
假设你访问 www.example.com,且缓存中还没有任何记录。
- 浏览器先检查自己的缓存,然后询问操作系统的存根解析器。
- 存根解析器把问题发给设备或网络上配置的递归解析器。
- 递归解析器询问根服务器
.com在哪里,根服务器把它指向.com的服务器。 .com服务器再把它指向example.com的权威名称服务器。- 权威服务器返回地址,例如 A 记录(IPv4)或 AAAA 记录(IPv6)。
- 递归解析器把答案交给你的设备,并保存一段时间。
- 浏览器连接到这个 IP 地址,页面开始加载。
整个过程通常只需几十毫秒,有了缓存,再次访问时大部分步骤都可以省略。具体细节定义在 RFC 1034 和 RFC 1035 中。
常见的记录类型
| 记录 | 内容 | 用途示例 |
|---|---|---|
| A | IPv4 地址 | 把 example.com 指向某台网站服务器 |
| AAAA | IPv6 地址 | 同上,用于 IPv6 网络 |
| CNAME | 另一个名称的别名 | 把 www 指向主域名 |
| MX | 域名的邮件服务器 | 告诉其他服务器把邮件投递到哪里 |
| TXT | 任意文本 | 邮件验证和所有权确认 |
缓存与 TTL
每条 DNS 答案都带有一个生存时间(TTL),单位是秒,规定解析器在再次询问之前可以重复使用该答案多久。TTL 很短(例如 60 秒),所有者可以很快迁移网站;TTL 很长(例如一天),则能减少查询量并加快解析。
这也是“DNS 生效”需要时间的原因。网站所有者修改记录后,世界各地的解析器会继续返回旧答案,直到各自的缓存过期。
隐私问题出在哪里
传统的 DNS 查询以明文发送。解析器本身以及路径上的任何人,都能看到你的设备查询了哪些名称。页面内容虽然看不到,但域名列表往往已经说明很多问题:银行网站、医疗机构、新闻媒体等。
这在实际中有三点影响:
- 在咖啡馆等共享网络上, 默认使用的解析器由网络管理者决定,对方可以查看甚至篡改返回结果。
- 网络运营商 如果你使用的是它的解析器,通常能看到你查询的域名。
- 你自己选择的公共解析器 会转而看到你的查询,也就是说,你只是改变了信任对象,并没有去掉信任。
加密 DNS 协议,例如基于 HTTPS 的 DNS(RFC 8484)和基于 TLS 的 DNS(RFC 7858),可以让路径上的其他设备看不到查询内容。但解析器仍然能看到,而你随后连接的 IP 地址对网络来说依然可见,除非有 VPN 之类的方式把这部分流量也包裹起来。HTTPS 保护页面内容,却不保护这一步查询,两者的区别见 HTTPS 与 VPN。
VPN 如何影响 DNS
连接 VPN 后,设备应当把 DNS 查询放入加密隧道,发送给 VPN 服务指定的解析器。本地网络只能看到发往 VPN 服务器的加密数据流,读不到你的查询。另一端的解析器会看到这些查询,也就是说,你把信任从咖啡馆或网络运营商转移给了 VPN 服务。
只有当应用和操作系统确实让 DNS 走隧道时,这才成立。有时查询会从正常路径漏出去,这就是 DNS 泄漏。连接状态下做一次泄漏测试,是快速检查的办法。

一个具体例子
你住在酒店,用酒店的 Wi-Fi 打开一个新闻网站。
- 没有 VPN 时,手机向酒店的解析器询问网站地址。酒店网络能看到域名,随后又看到你的手机连接到返回的 IP 地址。
- 使用正常工作的 VPN 时,查询在隧道内传输。酒店网络只能看到发往 VPN 服务器的加密流量,而新闻网站看到的访问者地址是 VPN 服务器的地址。
无论哪种情况,新闻网站都知道有人访问过;如果你已登录,它还知道你是谁。DNS 隐私只是整体中的一部分。
局限与注意事项
- DNS 不是全部。 隐藏查询并不会让解析器或 VPN 运营方看不到你所连接的 IP 地址。
- VPN 转移信任,而不是消除信任。 无论用哪个解析器,背后总有人在运营。
- 浏览器可能有自己的 DNS 设置。 内置加密 DNS 的浏览器可能绕过系统或 VPN 的设置,请检查浏览器的实际配置。
- 缓存可能掩盖问题。 修改 DNS 设置后,先重启浏览器或清除系统缓存,再进行测试。
- DNS 错误不一定是你的问题。 如果只有一个网站打不开,问题可能出在该网站自己的名称服务器上。
实用步骤
- 先查明你现在使用的是哪个解析器。大多数操作系统会在网络设置中显示 DNS 服务器,也有不少在线测试页面会告诉你是哪个解析器在应答。
- 如果某个网站打不开而其他网站正常,先换一个网络或重启路由器,再考虑改其他设置。
- 使用 VPN 时,运行一次 DNS 泄漏测试,确认显示的解析器不属于你本地的网络。
- 如果想在不使用 VPN 的情况下使用加密 DNS,请在浏览器或操作系统设置中查找 DNS over HTTPS 或 DNS over TLS,并选择你愿意信任的解析器。
- 如果你管理的网站刚更换了地址,而你仍看到旧地址,请清除 DNS 缓存。
总结
DNS 通过一系列解析器和名称服务器,把名称转换成 IP 地址,并借助缓存保持高速。标准查询可以被解析器以及路径上的人读取,因此 DNS 是反映你上网行为的真实线索。加密 DNS 和正常工作的 VPN 都能减少能看到它的人,但都不能让查询对所有方完全不可见。如果你想要一个不会自动续费的预付套餐,可以看看 XPASS 定价。
常见问题
DNS 是什么的缩写,它的作用是什么?
DNS 是 Domain Name System(域名系统)的缩写。它把 example.com 这类便于人阅读的名称,转换成计算机在互联网上互相查找时使用的数字 IP 地址。
谁能看到我的 DNS 查询?
默认情况下,你所使用的 DNS 解析器能看到你查询的每一个域名,以及你的 IP 地址。它通常是网络运营商的解析器,或你自己选择的公共解析器。加密 DNS 和 VPN 会改变处于这个位置的是谁,但总会有一方能看到。
VPN 会改变我的 DNS 吗?
VPN 通常会把 DNS 查询放进加密隧道,发送给 VPN 服务指定的解析器,而不是本地网络的解析器。是否真正做到这一点取决于应用和设备,所以值得做一次 DNS 泄漏测试。
为什么有时网络正常,却打不开某个网站?
常见原因之一是 DNS 问题:解析器响应慢、返回了过期的结果,或者无法连接。换一个网络、重启路由器或清除本机 DNS 缓存,往往能解决问题。
参考资料
关于作者

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


