SSH的访问主机别名的问题

首先先说我的理解,ssh xxx.xxx.xxx.xxx 这样访问其他计算机的22号端口进行访问。如果设置别名,我知道的仅能这样发挥作用的只有/etc/hosts文件,写成映射 xxx.xxx.xxx.xxx name 这样的形式。

问题描述:

A主机上/etc/hosts文件没有写入B主机的ip别名,但是却能直接ssh B主机的hostname访问B主机。这是为什么呢?是不是我的理解有问题。

A B 主机都是openSUSE。

很好奇,求解答

补充一下,A B 主机在同一网段,均为192.168.122.0

看一下/etc/nsswitch.conf文件中的hosts那一行是什么内容?难道有 wins ?

hosts: files dns

/etc/resolv.conf 里面可以设置 search 域,DNS解析时候会自动尝试加上后缀来解析
或者 ~/.ssh/config 里面可以直接写别名

同一网段就是路由器上的 dhcp server 设置造成的了,在 client 端找原因是没有意义的。

另外同一网段一般用 user@hostname.local 就能访问的…