服务器从 18.04 LTS 升级到 20.04 LTS 后出现主机名问题

服务器从 18.04 LTS 升级到 20.04 LTS 后出现主机名问题

所以我最近将我的 ubuntu 服务器从 18.04 更新到了 20.04,但现在我似乎无法通过主机名连接到我的服务器。路由器设置没有改变,我仍然得到正确的静态 IP。但是,当尝试通过 putty 从 Windows 连接到服务器时,我只能通过静态 IP 连接,而不能通过主机名连接。同样,我无法连接到托管在 ubuntu 服务器上的 samba 服务器。我注意到的一件事是,升级过程中有一些云配置更改被压缩,而且我的主机名在重新启动时恢复为不同的主机名。我将 persist_hostname 更改为 true 并使用 hostnamectl 后将主机名改回原位,但这两个主机名在 LAN 上都不可用。

另一个有趣的细节是,如果我在 LAN 设备上使用 nslookup 并搜索我的主机名,我会得到正确的静态 IP,这表明它可能不是 DHCP,因为该设备仍然以某种方式获取主机名。它只是无法通过该名称进行连接。

有任何想法吗?

答案1

我搞明白了。原来 Windows 做了一些非常奇怪的 DNS 解析,它会检查 WINS 服务器,但找不到,然后由于某种原因不检查 DNS。这就是为什么我可以在那台机器上使用 nslookup 并在那里看到我的服务器的正确主机名和 IP,但尝试 ping 时却不起作用。nslookup 使用了正确的 DNS,而 ping 则不正确。

解决方案很简单,只需在主机名后使用 . 即可使其完全合格,不知何故,这会使 Windows 检查 DNS 并立即连接。一旦我连接成功,我就可以断开连接并重新连接,而无需添加点,这意味着我可以像平常一样连接。我真的不知道这是怎么发生的,因为 Windows 机器和路由器没有改变,只有 ubuntu 服务器。更奇怪的是,我当时关闭的另一台 PC 在我整理好之后启动了,并且在没有完全合格的情况下没有出现问题。我对此没有任何解释。

相关内容