我已经搜索了好几天这个问题的线索,希望这里有人能给我一些启发。我知道我只能在这个简单的案例中使用 IP 地址,我也知道其他解决方案,比如 DNSmasq,但我对找到这个令人费解的问题的答案很感兴趣。
设置:
- 全新安装 Ubuntu Gnome 15.10 的桌面
- 全新安装 Ubuntu Server 15.10 的服务器
- avahi-daemon 在两者上运行
- 对两者的 /etc/avahi/avahi-daemon.conf 进行一项更改:use-ipv6=no
- ufw 在两者上均处于非活动状态
从桌面:
user@desktop:~$ avahi-browse -art
+ wlp1s0 IPv4 server [94:db:c9:b5:39:26] Workstation local
+ wlp1s0 IPv4 desktop [4c:34:88:c1:b0:4c] Workstation local
= wlp1s0 IPv4 desktop [4c:34:88:c1:b0:4c] Workstation local
hostname = [desktop.local]
address = [192.168.1.104]
port = [9]
txt = []
= wlp1s0 IPv4 server [94:db:c9:b5:39:26] Workstation local
hostname = [server.local]
address = [192.168.1.120]
port = [9]
txt = []
从服务器:
user@server:~$ avahi-browse -art
+ wlp3s0 IPv4 desktop [4c:34:88:c1:b0:4c] Workstation local
+ wlp3s0 IPv4 server [94:db:c9:b5:39:26] Workstation local
= wlp3s0 IPv4 server [94:db:c9:b5:39:26] Workstation local
hostname = [server.local]
address = [192.168.1.120]
port = [9]
txt = []
= wlp3s0 IPv4 desktop [4c:34:88:c1:b0:4c] Workstation local
hostname = [desktop.local]
address = [192.168.1.104]
port = [9]
txt = []
Avahi-browse 为两台机器找到了正确的 IP 地址,但存在以下问题:
从桌面:(ping、ssh 等均按预期工作)
user@desktop:~$ ping server.local
PING server.local (192.168.1.120) 56(84) bytes of data.
64 bytes from 192.168.1.120: icmp_seq=1 ttl=64 time=3.45 ms
...
从服务器:(未知主机???WTF)
user@server:~$ ping desktop.local
ping: unknown host desktop.local
有人有主意吗?
答案1
我找到了问题的原因并将其发布在这里,以便能够帮助其他遇到类似情况的人。
确保主机名与两个都 /etc/hosts
和/etc/hostname
。出于某种原因,它们在我的服务器上有所不同 - 更正了这个问题,avahi 现在可以按预期工作了。