我对 DNS 有一个挥之不去的疑问,请原谅这个问题的基本性。
如果我 ping www.whateversite.com,我就是在 ping anothersite.com 域中的 www 主机,对吧?
如果我 ping Anysite.com,我正在 ping 哪台主机?它是名称服务器还是什么?我注意到当我对他们执行 ping 操作时,他们通常会给出不同的 IP 地址。
非常感谢任何澄清。
我对 DNS 有一个挥之不去的疑问,请原谅这个问题的基本性。
如果我 ping www.whateversite.com,我就是在 ping anothersite.com 域中的 www 主机,对吧?
如果我 ping Anysite.com,我正在 ping 哪台主机?它是名称服务器还是什么?我注意到当我对他们执行 ping 操作时,他们通常会给出不同的 IP 地址。
非常感谢任何澄清。
您可以说您正在 ping 名为“whateversite.com”的主机。
“主机”和“域”之间有一些重叠。任何级别的任何域名如果有任何“地址”记录(通常是 IPv4/IPv6 的 A/AAAA 记录),都算作“主机”,它不一定是子域。
(但根据另一种定义,并非所有子域都必须代表“主机”——它们可以代表一项服务,或者它们实际上可以是一个“子域”,而实际主机更深一层。同样,DNS 不会强加严格的那里的结构。)
因此,第二种情况的工作方式与第一种情况完全相同——“whateversite.com”上有一条 A 记录指向某台机器。在简单的情况下,它可能与“www”子域指向的机器是同一台机器,但它们也可以不同。
(例如,一个可能指向主负载平衡器,而另一个则指向一个较小的系统,该系统仅将 HTTP 访问者重定向到“www”。)
首先要澄清的是,在 DNS 术语中,虽然“主机”地址(例如 A 或 AAAA 记录)可以指代单个服务器(传统上大多数情况下都是如此),但实际上并非如此。
当您 ping 地址时,它会通过 A 或 AAAA 记录解析为 IP 地址。请注意,还有许多其他 DNS 记录类型与 ping 无关。例如,名称服务器是通过 NS 记录进行处理的,因此在您的问题上下文中它们和 A 记录之间没有直接联系。
其次,主机地址可以是任何级别,因此 和 都
www.domain.com
可以domain.com
有自己的主机地址。由于它们是单独配置的,因此它们可以相同,也可以不同。例如,您可以mydomain.com
配置(注意,根域通常用 @ 表示):所以两者
www.mydomain.com
都mydomain.com
可以指向同一个IP地址。但你也可以有:现在它们会指向不同的 IP 地址,这可能指向完全不同的目的地。
第三,您可以拥有多个同名“主机”地址,因此即使不进入 CDN,您也不能总是将您尝试 ping 的特定地址与单个服务器关联起来。例如 :
在这种情况下,当您 ping 时,
www.mydomain.com
ping 命令将“随机”转到这些 IP 之一。您可以通过运行nslookup
和查询特定记录来看到这一点,然后会给出如下输出:最后,请记住,单个公共 IP 地址并不等同于另一端的单个服务器/机器/设备。他们可能会像其他人提到的那样使用 CDN,或者他们可能只是使用防火墙,通过单个公共 IP 平衡对其后面的多个服务器的请求。
因此,实际上,当您对某个地址执行 ping 操作时,您唯一可以确定的是它当前在您的计算机上解析为特定的 IP 地址。仅通过 Ping 无法确定该地址是否是其解析的唯一地址,或者另一端是否是一个或多个设备。
这是一种简化,但是是的,足够接近了。
你的两个例子没有区别。第一个句点的左侧是主机标签,其余的是域,就像您的第一个示例一样。
whateversite
因此,您正在 ping域中的主机com
。如果您 ping ,则您正在 ping根域中的
com
主机(通常写为 或)。请注意,根域的所有者通常不允许主机条目,尤其是与 TLD 名称相同的主机条目,但这纯粹是一个政治决定 - DNS 协议中没有任何技术可以阻止它。com
.
@
事实上,汤加王国有一个主机条目,
to
他们曾将其租给 URI 缩短服务。但事实证明,访问 https://to/ 有点困难,因为您的浏览器试图提供“帮助”,并认为您的意思可能是https://www.to/或https://to.com /或https://www.to.com/。但这也不是 DNS 系统的技术限制,而是现代网络浏览器中的用户界面问题。
它将是该服务器的所有者配置的任何内容。
当然,它们是不同的主机,因此它们可以有不同的 IP 地址。