我在一个从互联网上关闭的局域网上运行,有一些设备(A,B,C,......)通过以太网电缆连接到一台路由器,使这个局域网成为可能。所有设备上的操作系统:Windows 10。
问题:
- 当DNS没有时,为什么LLMNR失败?
- 为什么'ping A'使用LLMNR,而'ping A.' 使用DNS?
- 有没有办法强制nslookup使用LLMNR而不是DNS,为什么?
- 当我追加'。'时究竟发生了什么。对于'ping'和'nslookup'的主机名?
- 您如何知道这些问题的答案(工作领域和经验类型)?
这个问题的背景可以在下面找到
nslookup A
和
nslookup A.
两者都产生如下令人满意的结果
Server: localDnsServerName
Address: 192.168.1.1
Name: A
Address: 192.168.1.X
甚至
ping A.
产生令人满意的输出('。'附加到被查询的主机名)
Pinging A [192.168.1.x] with 32 bytes of data:
Reply from 192.168.1.X: byte=32 time<1ms TTL=128
Reply from 192.168.1.X: byte=32 time<1ms TTL=128
Reply from 192.168.1.X: byte=32 time<1ms TTL=128
Reply from 192.168.1.X: byte=32 time<1ms TTL=128
Ping statistics for 192.168.1.X:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
但是,以下命令
ping A
产量不理想
Ping request could not find host A. Please check the name and try again.
经过进一步调查,通过Wireshark,我看到了nslookup命令和'ping A'。命令导致使用DNS协议成功进行标准查询。
但是,'ping A'会导致使用LLMNR协议的标准查询失败。
通过RFC 4795,摘要用于LLMNR:
“链路本地多播名称解析(LLMNR)的目标是在无法进行常规DNS名称解析的情况下启用名称解析.LLMNR支持所有当前和未来的DNS格式,类型,和类,在与DNS分开的端口上操作,并且具有独特的解析器缓存。由于LLMNR仅在本地链路上运行,因此不能将其视为DNS的替代品。
附加标签:'llmnr'
我会正式添加上面提到的附加标签,但我没有至少300的声誉来创建新标签。如果可以在创建问题后标记问题,请添加此标记,方法是编辑此问题。
ipconfig /all
。另外,你在一篇文章中提出了太多问题。您可以发布多个问题,如有必要,可以链接回此问题以提供上下文。
nslookup
总是查询DNS,因此测试毫无意义。我没有看到你提到操作系统。我想这是Windows ......?