在我的局域网上,我有三个基本相同的Debian
Linux盒子运行Avahi.其中一个同时具有IPv4地址和IPv6地址,另外两个只有IPv6地址.它们都出现在Mac上的Bonjour浏览器中,如下所示:
Workgroup Manager (_workstation._tcp.) - 4 Box-1 [00:60:2b:02:45:f8] [fe80::260:2bff:fe02:45f8]:9 192.168.1.78:9 Box-2 [00:60:2b:02:46:1b] [fe80::260:2bff:fe02:461b]:9 Box-3 [00:60:2b:02:42:e2] [fe80::260:sbff:fe02:42e2]:9
从我的Mac,一切都很好……我可以解决Box-1.local.,Box-2.local.,Box-3.local.,ping6到任何一个,ssh到其中任何一个,等等.
但是,我的Windows 7机器只能看到Box-1.例如,在命令提示符窗口中执行dns-sd会让我这样:
C:\>dns-sd -B _ssh._tcp Browsing for _ssh._tcp Timestamp A/R Flags if Domain Service Type Instance Name 12:41:14.492 Add 2 17 local. _ssh._tcp. Box-1 SSH
通过Bonjour名称和IPv6对该框进行Ping操作:
C:\>ping -6 msli-dcm-2-10330688.local. Pinging msli-dcm-2-10330688.local. [fe80::260:2bff:fe02:45f8%17] with 32 bytes of data: Reply from fe80::260:2bff:fe02:45f8%17: time=1ms Reply from fe80::260:2bff:fe02:45f8%17: time<1ms Reply from fe80::260:2bff:fe02:45f8%17: time<1ms
…就像通过IPv6地址ping其他框一样:
C:\>ping -6 fe80::260:2bff:fe02:461b Pinging fe80::260:2bff:fe02:461b with 32 bytes of data: Reply from fe80::260:2bff:fe02:461b: time=4ms Reply from fe80::260:2bff:fe02:461b: time<1ms Reply from fe80::260:2bff:fe02:461b: time<1ms Reply from fe80::260:2bff:fe02:461b: time<1ms Ping statistics for fe80::260:2bff:fe02:461b: Packets: Sent = 4,Received = 4,Lost = 0 (0% loss),Approximate round trip times in milli-seconds: Minimum = 0ms,Maximum = 4ms,Average = 1ms C:\>ping -6 fe80::260:2bff:fe02:42e2 Pinging fe80::260:2bff:fe02:42e2 with 32 bytes of data: Reply from fe80::260:2bff:fe02:42e2: time<1ms Reply from fe80::260:2bff:fe02:42e2: time<1ms Reply from fe80::260:2bff:fe02:42e2: time<1ms Reply from fe80::260:2bff:fe02:42e2: time<1ms Ping statistics for fe80::260:2bff:fe02:42e2: Packets: Sent = 4,Maximum = 0ms,Average = 0ms
….似乎Bonjour for Windows根本无法识别已发布的主机,除非它具有IPv4地址.这是一个在Windows的Bonjour中的错误,还是我做错了什么? FWIW,我的Windows 7机器正在运行Bonjour 2.0.2.0