Why doesn't Bonjour for Windows see my IPv6-only Linux hosts?
On my LAN I have three essentially identical Debian Linux boxes running Avahi. One of them has both an IPv4 address and and IPv6 address, and the other two have only IPv6 addresses. They all show up in Bonjour Browser on my Mac, like this:
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
From my Mac, all is well and good... I can resolve box-1.local., box-2.local., and box-3.local., ping6 to any of them, ssh to any of them, etc.
My Windows 7 machine, however, can only see box-1. For example, doing a dns-sd in a Command Prompt window gets me this:
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
Pinging that box via its Bonjour name and IPv6 works:
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
... as does pinging the other boxes via their IPv6 addresses:
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, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
.... it seems that Bonjour for Windows simply won't recognize a published host unless it has an IPv4 address. Is this a bug In Bonjour for Windows, or am I doing something wrong? FWIW, my Windows 7 machine is running Bonjour 2.0.2.0
Solution 1:
Does dig @224.0.0.251 -p 5353 ptr _ssh._tcp.local
report both addresses whichever machine you query from?
If you can't get dig
for Windows then try
nslookup -q=ptr -port=5353 _ssh._tcp.local 224.0.0.251
nslookup -q=any -port=5353 box-2.local 224.0.0.251
nslookup -q=aaaa -port=5353 box-2.local 224.0.0.251