使用不同的操作系统时,本地计算机的名称查找失败

使用不同的操作系统时,本地计算机的名称查找失败

这有效

  • 通过 ip 地址查找
  • 从另一台 GNU/Linux 机器查找一台 GNU/Linux 机器的 IP
  • 从 Windows 7 计算机查找 Windows XP 计算机的 IP
  • 从任何机器查找路由器 IP

这不起作用:

  • 从 Windows 查找到 GNU/Linux 或反之亦然
  • nslookup 无论如何

有关路由器(D-LINK)的信息:

Model Name: DIR-859
Hardware Version: A3
Firmware Version: 1.04

我试过 nslookup,但失败了。这是我在 Linux 提示符下得到的结果(darkmatter 也运行 Linux,所以这应该有效):

 nslookup darkmatter.local
 Server:         127.0.1.1
 Address:        127.0.1.1#53

** server can't find darkmatter.local: NXDOMAIN

PING darkmatter.local (192.168.0.45) 56(84) bytes of data.
64 bytes from 192.168.0.45: icmp_seq=1 ttl=64 time=0.626 ms
64 bytes from 192.168.0.45: icmp_seq=2 ttl=64 time=0.728 ms
64 bytes from 192.168.0.45: icmp_seq=3 ttl=64 time=0.498 ms
64 bytes from 192.168.0.45: icmp_seq=4 ttl=64 time=0.483 ms
^C
--- darkmatter.local ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 0.483/0.583/0.728/0.104 ms

如果我尝试从 Windows 7 机器(DNS后缀为本地)使用 darkmatter:

ping darkmatter
Ping-begäran kunde inte hitta värddator darkmatter. Kontrollera namnet och prova igen.

然而:

ping 192.168.0.45
Skickar ping-signal till 192.168.0.45 med 32 byte data:
Svar från 192.168.0.45: byte=32 tid=1ms TTL=64
Svar från 192.168.0.45: byte=32 tid < 1 ms TTL=64
Svar från 192.168.0.45: byte=32 tid < 1 ms TTL=64
Svar från 192.168.0.45: byte=32 tid < 1 ms TTL=64

Ping-statistik för 192.168.0.45:
    Paket: Skickade = 4, Mottagna = 4, Förlorade = 0 (0 %),
Ungefärlig överföringstid i millisekunder:
    Lägsta = 0 ms, Högsta = 1 ms, Medel = 0 ms

更换路由器后出现该问题。

答案1

这可能是因为与大多数其他操作系统不同,Windows 不支持 .local 域的 IETF ZeroConf mD​​NS RFC。相反,微软选择创建一个名为 LLMNR 的专有事物,并使用 .local 作为该事物。

当桌面 Linux 机器使用 .local 时,它通常会使用 Avahi,它是 IETF ZeroConf RFC 的开源实现。Android Linux 设备使用 Apple 开发的 POSIX 可移植、开源 mDNSResponder 守护程序(Bonjour 只是 Apple 为 IETF ZeroConf mD​​NS 设计的品牌)。

苹果产品也使用mDNSResponder。

Apple 为 Windows 维护了一个 mDNSResponder 端口,称为 Bonjour for Windows。安装它可能是让标准 IETF ZeroConf mD​​NS 支持在 Windows 上运行的最简单方法,这样它就可以正确地与您的 Linux、Android 和 Apple 设备进行互操作。

相关内容