对于你们中的某些人来说,这可能听起来很愚蠢和基础,但即使在网上阅读了大量资料后,我仍然对此感到困惑。我仍然不清楚的问题是:
机器中的主机名(例如
hostname
在 debian OS ssh 中输入时)与您在 DNS 服务器A
记录中输入的主机名是否不同?将我的 Debian 机器主机名设置为
maximus
并将 DNS A 记录主机名设置为是否正常mail
?这两者是否相同,以至于我混淆了它们,认为它们是分开的,还是它们通常可以互换使用,从而造成混淆?
当谈到 FQDN 时,
host
它是否使用机器的主机名或 DNS A 记录中给出的主机名?
我的设置:1 Debian 7 VPS,Web 服务器和邮件服务器均在同一个盒子上。
答案1
hostname
返回您配置的系统视为其主机名的内容。可能有任意数量的A
/AAAA
记录指向与此系统关联的 IP 地址。这本身并不异常。不过,我期望以 开头的名称也有一个
A
/记录,因为在您的示例中这似乎是规范名称。AAAA
maximus
从概念上来说,它们并不相同,但预期存在重叠。即,如果您已将系统配置为将其视为
maximus.example.com
其 FQDN,则预期此名称也存在于 DNS 中(可能与许多其他名称一起存在)。hostname
返回您配置的系统将其视为主机名的内容(例如maximus
)。hostname -f
将返回前者,并附加域,形成 FQDN(例如maximus.example.com
)。域通常基于文件中的条目hosts
。host
如果您指的是该命令,则该命令是仅用于 DNS 的工具。
答案2
您的计算机的主机名位于您的计算机内部。您无法在计算机外部看到它。就您而言,“maximus”是主机名。
DNS 是 DNS 服务器中提供的分布式数据库。您可以向 DNS 询问一些信息。您可以在 DNS 中记录您想要的和不同于主机名的内容。在您的例子中,您的 DNS 记录 A 是“邮件”
没有什么正常或不正常。这两个信息存储在不同的存储器中,也可能不同。