我有丰富的在独立机器和本地网络上管理 Linux 的经验。
最近我租用了一台运行 Linux 的 VPS 服务器和一个域名,我对hostname
和domainname
命令有一些疑问。
目前,我的域名(例如 foobar.com)指向我的 VPS 的 IP 地址(例如 1.23.45.67)。此外,我的 VPS 有一个指定的主机名(例如 virt1000),主机名是托管公司的域名(hostingcompany.com)。因此,我可以通过两种方式通过 SSH 连接到我的 VPS:
$ ssh -l user virt1000.hostingcompany.com
$ ssh -l user foobar.com
我已将域名foobar.com
从命令行更改为另一个,并将主机名更改为另一个(例如 mynicehost)。我是否应该在我的域中添加mynicehost.foobar.com
并/etc/hosts/
设置mynicehost.foobar.com
A 记录中的子域?
我实际上是在寻求最佳实践。就目前情况而言,一切都正常(域名会带您进入正确的网站等)。
提前致谢。
答案1
您似乎没有理解我评论的重点,因此我将在答案中详细说明:
虚拟机并不特殊。它们应该像任何其他物理主机一样被对待。
换句话说,如果您认为为mynicehost.foobar.com
物理机设置主机名是合理的,那么您应该为虚拟机做同样的事情。
DNS 和/etc/hosts
问题取决于个人喜好。
有些人会告诉你本地主机名应该始终在 中/etc/hosts
,而其他人(比如我)会说它应该始终在 DNS 中(并且通常不是在/etc/hosts
)。
如果您从系统发送邮件,通常重要的是其主机名可以在 DNS 中解析(并且正向A
记录与反向PTR
记录匹配)。
请注意,该domainname
命令可能不会按照您想象的那样执行。
这domainname
命令在历史上是 NIS 的东西。如果你不知道 NIS 是什么,那你可真是幸运。