Avahi 发现 IP 在几秒后发生变化

Avahi 发现 IP 在几秒后发生变化

我使用 avahi 查找本地网络上的机器。它最近出现故障,导致一台机器发出错误的 IP。我通过 ssh 连接到另一台机器来调试该问题。

确认当前解析的IP是错误的:

$ getent hosts evan-woodtower.local
172.17.0.1   evan-woodtower.local

重新启动 avahi 守护进程似乎可以解决该问题:

$ sudo avahi-daemon -k
$ getent hosts evan-woodtower.local
10.88.111.9   evan-woodtower.local

但只持续了几秒钟,它就回到了原来的错误 IP

$ getent hosts evan-woodtower.local
172.17.0.1   evan-woodtower.local

发生了什么事?我已在网络上的多台机器上进行了测试,这似乎是唯一出错的查找。我访问过的任何机器似乎都与此主机存在同样的问题,而且只有此主机存在同样的问题。

答案1

因此,这原来是avahi-daemon更改附加到.local名称的网络接口的问题。我原本希望它使用br0,但有时会切换到 docker 虚拟接口。

docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        ether 02:42:8a:98:79:93  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

解决方案是编辑/etc/avahi/avahi-daemon.conf以强制 avahi 仅查看br0界面:

 allow-interfaces=br0

相关内容