dig / nslookup 无法解析,但 ping 可以

dig / nslookup 无法解析,但 ping 可以

我正在试验在 minwinpc.local 上运行 Web 界面的 Win10 IoT 板。这在浏览器中工作得很好,当我使用 ping 时也是如此。

但是,当我使用 dig 或 nslookup 时,我无法解析工作。

如果更基本的工具无法解决问题,那么 ping 和浏览器如何获得 IP?

安装程序只是一个带有 Win10 IoT Core 的 DragonBoard,连接到 iPhone 热点。尝试连接的客户端正在运行 macOS Sierra。没有调整任何特殊主机或解析文件。

$ping minwinpc.local
PING minwinpc.local (172.20.10.3): 56 data bytes
64 bytes from 172.20.10.3: icmp_seq=0 ttl=128 time=6.539 ms

$ dig minwinpc.local any @172.20.10.1

; <<>> DiG 9.8.3-P1 <<>> minwinpc.local any @172.20.10.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 61796
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;minwinpc.local.        IN  ANY

;; Query time: 51 msec
;; SERVER: 172.20.10.1#53(172.20.10.1)
;; WHEN: ...
;; MSG SIZE  rcvd: 35

查找

$ nslookup minwinpc.local
Server:     172.20.10.1
Address:    172.20.10.1#53

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

相关问题:

答案1

这并不是一个更基本的协议不起作用的问题,而是使用了多种名称服务解析协议;ping这里理解多播 DNS (mDNS),并能够minwinpc.local通过该协议将名称解析为 IP 地址。dig相比之下,nslookup可能只理解或使用传统的 DNS 协议,对 mDNS 一无所知,从而失败。

.local域名是 mDNS 的明确指标(通过网络搜索“.local 域名”);更多内容可以阅读[RFC 6762]。调试此类情况的另一个选项是运行tcpdumpWireShark 并查找包含以下内容的数据包minwinpc.local:这可能会泄露 mDNS 流量。

还有一个选择是nmap设备的 IP minwinpc.local;这很可能表明该设备正在侦听 UDP/5353,然后可以研究该端口用于哪些服务(然后可以sudo tcpdump udp port 5353检查涉及该端口的流量)。

答案2

dig 和 nslookup 将忽略主机文件,它们希望通过询问主 DNS 服务器来解析。另一方面,Ping 和您的浏览器将使用主机文件,因此看起来这就是 dig 和 nslookup 无法解析的原因。

以下是在我的 win10 笔记本电脑上完成的: C:\Users\Me>hostname DESKTOP-UJTKQ4C

C:\Users\Me>nslookup DESKTOP-UJTKQ4C 服务器:未知地址:192.168.231.1

*** 未知无法找到 DESKTOP-UJTKQ4C:不存在的域

相关内容