我使用 PuTTY 通过将“SomeComputerName”放入 PuTTY 的主机名框中来 SSH 进入远程服务器。
hostname
然后,当我在终端运行命令时,我得到了一些不同的东西,如“abc.somestuff.com”。
为什么 PuTTY 使用的名称与hostname
返回的名称不同?
答案1
您用于通过 SSH 连接到系统的名称是其 DNS 名称。任何给定系统都可以为其 IP 地址分配 0 到多个 DNS 名称。限制是 DNS 名称必须是全局唯一的(非公共域除外,例如.local
)。
但是系统主机名是单数(系统只能有一个)。尽管如此,主机名在本地网络之外不需要是唯一的。因此,您可以有一个名为 server1 的服务器,我也可以。
因此,不需要您使用与系统配置的主机名相同的名称来连接到系统。
无法解释系统管理员为何选择不对系统和网络命名服务 (DNS) 使用相同的名称。根本没有要求他们这样做。
在我的商店中,我们定期更换服务器,但我们不想更改或重新配置使用该服务器上服务的应用程序,因此我们让应用程序指向 DNS 名称(webdev、webtest、datatest 等)。然后当我们创建一个新的服务器来设置它时,我们必须给它一个新名字(因为旧服务器仍然存在),但是一旦新服务器准备就绪,我们只需将 DNS 名称指向新服务器的 IP 地址,或将 IP 从旧服务器移动到新服务器即可完成替换。
答案2
对 Franks 答案的补充,检查你的 ssh 配置中是否有任何自定义别名。