当我在浏览器中输入 mynewdomain.com 时,我相信会发生以下情况。
我的计算机向我的 ISP 的名称服务器发送请求,以查找 mynewdomain.com 的 IP 地址
我的 ISP 名称服务器向“.”名称服务器发送请求。
“。”向 ISP 名称服务器发回一个响应,说尝试使用 com.nameserver。
我的 ISP 名称服务器向 com.nameserver 发送请求。
com. 名称服务器找到 mynewdomain.com. 并将 A 记录发送回我的 ISP 名称服务器。
我的 ISP 名称服务器将其发送回我的计算机。
我的问题是关于第 5 步的。mynewdomain.com. 如何进入 com. 名称服务器的列表?鉴于有数亿个已注册的 .com,它如何在如此短的时间内找到我的?
答案1
有一种东西叫做“粘合记录”。它们基本上将您的域名粘合到顶级域名上。
当您注册域名时,注册商会要求您输入域名服务器的主机名和 IP 地址。这些信息随后会发送到顶级域名的根注册商,顶级域名服务器通过这种方式来找到您的域名。
您的列表中的第 5 步是错误的。以下是实际发生的情况。
我的计算机向 ISP 发送请求解析器查找 mynewdomain.com 的 IP 地址
我的 ISP 解析器向“。”名称服务器发送请求。
“。”向 ISP 解析器发送回响应,说尝试使用 com. 名称服务器。
我的 ISP 解析器向 com.nameserver 发送请求。
com. 名称服务器找到 mynewdomain.com 的粘合记录,并将有关名称服务器的信息发送回您的 ISP 解析器。
我的 ISP 解析器联系 mynewdomain.com 名称服务器并请求 mynewdomain.com 的 A 记录。
我的 ISP 解析器将其发送回我的计算机。
如您所见,我在几个地方将“名称服务器”更改为“解析器”。这是为了澄清对域具有权威性的名称服务器(即用于域的 NS 记录的名称服务器)与客户用于在互联网上查找任何域的名称服务器之间的区别。它们都运行相同的软件,但使用方式不同,除非您了解其中的区别,否则可能会造成混淆。
至于他们如何在如此短的时间内做到这一点——他们使用了非常非常好的硬件和非常非常好的软件。顶级域名不只有一两个名称服务器,而是有多个,这些服务器(通常)是多宿主的,因此同一个 IP 地址可以转到多个服务器中的任何一个,具体取决于从网络拓扑的角度来看哪个服务器离您最近。这需要大量的思考和工作。
预计到达时间:速度的另一个部分是大多数名称服务器流量是 UDP 而不是 TCP。
此外,您的 ISP 解析器将缓存它所连接的域名服务器给出的回复。这意味着,如果您正在解析一个非常受欢迎的域名,例如“google.com”,则信息很可能仍保留在缓存中。(在域名服务器记录中,您可以设置响应的缓存时间限制;有时可以提前从缓存中删除,但保存时间绝不能超过 DNS 记录中给出的 TTL。)