Dig
avahi-resolve 解析 dig -p 5353 @224.0.0.251 不解析的主機名?
我想
avahi-resolve
並且dig -p 5353 @224.0.0.251
做了很多同樣的事情。但是,我有一個設備,我可以使用
avahi-resolve
但不使用來解析其名稱dig
:$ avahi-resolve --name ding-5cd80b3.local ding-5cd80b3.local 192.168.0.248 $ dig +short -p 5353 @224.0.0.251 ding-5cd80b3.local ;; Warning: ID mismatch: expected ID 60466, got 0
我也不能進行反向查找:
$ avahi-resolve --address 192.168.0.248 Failed to resolve address '192.168.0.248': Timeout reached $ dig +short -p 5353 @224.0.0.251 -x 192.168.0.248 ;; connection timed out; no servers could be reached
宣傳其名稱的設備是一個簡單的物聯網設備,因此我對它具有非常基本的 mDNS 支持(如果使用ESP-IDF 提供的mDNS 支持)並不感到驚訝。
我已經嘗試對兩者都使用詳細標誌,
avahi-resolve
看看dig
是否可以讓我對正在發生的事情有所了解,但在這兩種情況下,我都沒有得到任何額外的見解。我猜這
ID mismatch
意味著它dig
實際上正在得到響應,但拒絕顯示它,因為它將這解釋為DNS 欺騙的情況,同時avahi-resolve
更加寬容。除了使用 Wireshark 之外,有什麼方法可以讓
dig
我變得更加寬容(我試過了)或者我可以看到這裡發生了什麼?+besteffort
我正在使用 Ubuntu,並且如前所述,有問題的設備正在使用ESP-IDF。
問題似乎確實與底層 ESP-IDF 庫及其 mDNS 支持有關。
它的響應中不包含原始查詢中包含的 ID,它始終只使用 0。因此
dig
錯誤說ID mismatch: expected ID 60466, got 0
.我已經針對 ESP-IDF記錄了 issue #5574來解決這個問題。