Domain-Name-System

為什麼 nslookup 和 dig 給我一個“警告:ID 不匹配…得到 0”錯誤?

  • February 6, 2013

我正在嘗試解決一些持久性連接問題,並且在使用 dig 或 nslookup 時經常收到以下錯誤消息。

bash$ nslookup
> www.google.com
;; Warning: ID mismatch: expected ID 36298, got 0
;; Warning: ID mismatch: expected ID 36298, got 0
;; Warning: ID mismatch: expected ID 36298, got 0

bash$ dig www.google.com
;; Warning: ID mismatch: expected ID 34149, got 0
;; Warning: ID mismatch: expected ID 34149, got 0
;; Warning: ID mismatch: expected ID 34149, got 0

; <<>> DiG 9.8.3-P1 <<>> www.capitalone360.com
;; global options: +cmd
;; connection timed out; no servers could be reached

誰能闡明此錯誤消息的含義,尤其是“得到0”部分?

這意味著nslookupdig收到了一個 ID 為零的回复,而不是它所期望的 ID。作為防止偽造 DNS 回复的一部分,每個 DNS 查詢都包含一個 ID,通常是隨機選擇的。DNS 伺服器將 ID 複製到回復中,允許客戶端匹配對查詢的回复並防止偽造的 DNS 回復被接受。

這可能是由損壞的 DNS 伺服器或損壞的 DNS 轉發或重寫方案引起的。它也可能是由欺騙性 DNS 回复的攻擊引起的,儘管這不太可能。

引用自:https://serverfault.com/questions/475917