无法通过主机名 ssh 进入 Ubuntu 服务器

无法通过主机名 ssh 进入 Ubuntu 服务器

我刚刚在一个旧盒子上安装了 Ubuntu 12.04 Server,并通过以太网连接到我的路由器。我按照说明设置了 openssh-server 以进行远程访问,但我无法使用主机名从我的笔记本电脑 ssh 进入它。

但奇怪的是,我可以使用 IP 地址 ssh 进入它。为了方便起见,我真的很想解决这个问题。我注意到有几个类似的问题,但似乎所有这些人都知道该朝哪个方向解决问题,并且正在问一些更具体、更技术性的问题。

作为家庭网络的完全初学者,如果有人能告诉我下一步该怎么做,我将非常感激。

答案1

除非您在中心位置配置主机名,否则您的笔记本电脑无法知道您在 Ubuntu 服务器上配置的主机名。

因此,如果您在安装 ubuntu 服务器时将其命名为“bonkers”,那么可以理解的是,笔记本电脑ssh bonkers不会执行任何操作,因为笔记本电脑不知道该主机名。

可能的解决方案:

  • 在您的笔记本电脑上(您没有说它运行的是哪个操作系统?)在 /etc/hosts 文件中添加一行用于您的 Ubuntu 服务器的 IP 地址,如下所示(使用您的 Ubuntu 服务器的实际 IP):

    10.15.30.41 ubuntu-server

    然后你就可以这样做了ssh ubuntu-server,它应该可以工作。请注意,hosts 文件的位置取决于你的笔记本电脑使用的是哪种操作系统;例如,我不确定它在 Windows 上的位置。

  • 在 Ubuntu 服务器上安装 avahi-daemon 软件包。这将利用 mDNS 协议在本地网络上“通告”其主机名。安装并运行后,您应该能够ssh ubuntu-server.local(注意.local域)访问服务器。同样,如果您的笔记本电脑运行的是 Windows,我无法确定它是否支持 mDNS;我知道 Ubuntu(以及安装了 avahi-daemon 的任何其他 Linux)和 Mac OS X 开箱即用地支持它。

答案2

我遇到了类似的问题,并尝试通过安装 Avahi-daemon 来解决它,就像 roadmr 建议的那样,但显然没有结果。然后我输入

host myhostname

终端回答我:

myhostname.lan has address 192.168.1.68
Host myhostname.lan not found: 3(NXDOMAIN)

在客户机中,我使用主机名 myhostname.lan,它正常工作。直到我使用 DHCP 连接。分配 IP 后它不起作用...

相关内容