Domain IP Lookup

一次递归 DNS 查询,逐跳详解

浏览器

想访问 example.com

解析器

运营商 / 1.1.1.1

根 + TLD

谁负责 .com?

权威服务器

真正的答案

这条链路上的每一跳本身都是一次 DNS 查询,之后都会被缓存

DNS 基础

什么是域名服务器?域名委派的工作原理

3 分钟阅读

域名服务器是保存您域名的 DNS 记录并回答相关问题的服务器。域名上的 NS 记录指明了由哪些域名服务器负责,而这一个设置,决定了究竟哪个控制面板里的修改才算数。

如果您曾经修改过某条 DNS 记录,等了半天却什么都没发生,十有八九就是这个原因。

委派:互联网如何找到您的域名服务器

DNS 是一套委派的层级结构。没有谁掌握着所有域名的总清单,而是每一层把责任交给下一层。

一次递归 DNS 查询,逐跳详解

浏览器

想访问 example.com

解析器

运营商 / 1.1.1.1

根 + TLD

谁负责 .com?

权威服务器

真正的答案

这条链路上的每一跳本身都是一次 DNS 查询,之后都会被缓存

每一层只知道接下来该问谁,您的域名服务器才是最终的权威。
  1. 根服务器知道每个顶级域由谁运营,也就是谁负责 .com、.org、.io。
  2. .com 注册局知道每个 .com 域名委派给了哪些域名服务器,您的 NS 记录就记录在这里。
  3. 您的域名服务器保存着实际的区域:A、MX、TXT 以及其他所有记录。

核心要点

您的注册商控制您的域名指向哪些域名服务器,而运营这些域名服务器的一方,则控制记录的内容。二者往往是两家不同的公司。

注册商与 DNS 托管方的区别

在 DNS 的所有概念中,这一区分引起的困惑最多。

注册商DNS 托管方
职责注册并持有域名为该域名回答 DNS 查询
控制NS 委派实际的记录
示例Namecheap、GoDaddy、Google DomainsCloudflare、Route 53、您的虚拟主机服务商
是同一家公司吗?通常是,但不一定

NS 记录长什么样

委派记录
example.com.    86400    IN    NS    ns1.cloudflare.com.
example.com.    86400    IN    NS    ns2.cloudflare.com.

注意这里较长的 TTL:86400 秒就是一天,而委派的 TTL 往往还要更长。这是有意为之:委派很少变化,对其进行大量缓存,可以减轻 TLD 服务器的负载。

两台域名服务器是实际中的最低要求,大多数注册局也要求至少两台。服务商通常会给您分配两到四台,部署在不同的网络上,这样一处故障就不会让您的域名下线。

如何查看您的域名服务器

命令行
dig +short example.com NS

或者把域名放进查询工具里运行,它会连同其他记录一起列出 NS 记录。返回的结果,就是您应当去其控制面板中进行编辑的那家服务商。

安全地更换域名服务器

更换 DNS 服务商,会把您的整个区域一次性迁移走。如果操作草率,所有东西会同时出问题,包括网站、邮件和各类验证记录。

  1. 先复制所有现有记录

    从当前服务商处导出完整的区域。不要只导出 A 记录,还有 MX、所有 TXT(SPF、DKIM、验证令牌)、CNAME 以及所有子域名。漏掉任何一条,都会让依赖它的服务出问题。

  2. 切换之前,先在新服务商处重建它们

    在委派仍指向旧服务商的时候,先在新的托管方处建好完整的区域。此时没有任何东西已经生效,所以犯错没有代价。

  3. 直接查询新的域名服务器进行验证

    对每种记录类型运行 dig @ns1.newprovider.com example.com。这会在任何委派变更之前先查询新服务器,从而确认区域是正确的。

  4. 在注册商处更新 NS 记录

    到这一步才去更改委派。由于注册局 TTL 的缘故,切换最长可能需要 48 小时才能在各处可见。

  5. 让旧区域再保留一周

    不要立刻删除旧记录。委派尚在变化期间,仍有一些解析器会访问旧服务器,如果区域已经不在,这些查询就会直接失败。

需要查看某个域名的公网 DNS 地址?使用 Domain IP Lookup 工具。

本主题的免费工具

常见问题