我有两个服务器,似乎已经configuration了一些“开箱即用”以允许“ssh servername.local”工作。 我真的很喜欢这个,看着它,但我没有看到他们的configuration有任何不同。
server1:(ssh by name works )
$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 server1
server2:(通过名字ssh 不起作用 )
$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 server2
server1.local连接正常,server2.local获取此响应:
ssh: Could not resolve hostname server2.local: Name or service not known
我没有做任何设置DNS,两个服务器的revolv.conf文件是相同的。
server2运行ubuntu server 9.04 32位(jaunty),server1运行ubuntu desktop 9.10 64位(karmic)。
任何人都可以告诉我,我应该看看什么是不同的,为什么它在一个而不是另一个上工作?
Avahi需要在两台机器上运行。 它是提供mDNS服务的守护进程。
root @ rilindo-desktop:〜#ps -ef | grep avahi avahi 903 1 0 Jan01? 00:00:05 avahi-daemon:注册[rilindo-desktop.local] avahi 904 903 0 Jan01? 00:00:00 avahi-daemon:chroot助手根18206 15276 0 11:23 pts / 2 00:00:00 grep avahi
假设端口5353未在机器上过滤/阻塞,则需要validationavahi的configuration。
你可以检查两台机器和主机上的/etc/nsswitch.conf:设置吗? 他们都一样吗?
还要检查/etc/resolv.conf中的“search”行
由于不依赖于命名的随机协议,您可以不在服务器上设置静态IP,然后将其各自的条目添加到其他机器主机文件? 例如
在server1上
192.168.1.200 server2
在server2上
192.168.1.100 server1
虽然avahi和其他零configuration工具是有用的,他们并不总是你想要的东西。