主机名或子域?

pep*_*ito 5 hostname subdomain

我明白,在“webmail.chemistry.iit.edu”的方向上,“chemistry”是一个子域,“webmail”是主机名。那么,根据 Google 的文档,为什么在“mail.google.com”中,“mail”是一个子域?将主机名放在域的左侧不是强制性的吗?

Mos*_*atz 6

不,域名不强制采用任何特定格式。您几乎可以在 DNS 中放入任何您想要的东西,而且公司确实使用各种方案。

也就是说,“主机名”这个词如果经常用来表示两个不同的东西。这可能意味着

  1. 计算机的名称。这可以采用多种不同的格式,包括单个单词、完整域名以及介于两者之间的任何内容。
  2. 计算机的完整域名,无论该计算机是否在计算机上设置了该全名作为其主机名。

更复杂的是,您在问题中提到的任何一个事物都绝对没有理由从这个词的第一个意义上说是“主机名”。事实上,许多地方没有名为“webmail”的计算机,而是让该名称指向另一台具有不同名称的计算机。例如,在我的旧办公室中,“mail.example.com”实际上可能位于名为“mailserver2.office.example.internal”的机器上。如您所见,“主机名”这个词的第一种含义甚至不是可公开访问的地址。

对于您的“mail.google.com”示例,GMail 实际上运行在许多服务器上(成百上千,尽管 Google 之外没有人确定),因此没有名为“mail.google.com”的计算机。Google 不会公布“mail.google.com”指向的服务器的实际名称。即使你在查找它指向的地方时看到“googlemail.l.google.com”,那也不是服务器的真实名称,而是指向许多服务器的名称。

例如,可能有一个名为“webmail01-newyork342-version1.googlemail.datacenter-newyork.google.private”的服务器,它可以作为“googlemail.l.google.com”公开访问。Google 使用 DNS 循环、基于区域的 DNS 分区和 IP 任播使所有这些服务器响应相同的名称。

在较小的设置中,完整地址的最左边部分通常是您要连接到的机器的名称,但在与任何大公司打交道时很少出现这种情况。