我正在學習有關DNS的知識,我試圖瞭解非遞歸解析器/服務器如何響應空響應。瞭解DNS響應標頭信息
我的DNS的理解基本上是:
如果服務器返回一個非權威性響應時,它通常會提供域名服務器(該NSCOUNT),你可以協商,找到權威的響應列表。
但是,如果DNS服務器什麼都不返回會發生什麼?如在 - 只是與ANCOUNT = 0
,NSCOUNT = 0
和ARCOUNT = 0
響應標題?
例如,如果我查詢谷歌的免費DNS服務器(8.8.8.8
),我問它來解決「google.com」,以及遞歸位沒有設置,這是我得到的迴應:
+---------------------------------------------------------------------------+
| 25550 | QR: 1 | OP: 00 | AA: 0 | TC: 0 | RD: 0 | RA: 1 | Z: 0 | RCODE: 00 |
+---------------------------------------------------------------------------+
| QDCOUNT: 1, ANCOUNT: 0, NSCOUNT: 0, ARCOUNT: 0 |
+---------------------------------------------------------------------------+
所以基本上,它除了我的原始查詢外沒有任何回報,它告訴我遞歸是可用的。
在這種情況下,查詢應該如何繼續(假設我們不只是使用請求服務器來使用遞歸)。唯一的辦法就是聯繫其中一臺頂級服務器嗎?或者,以另一種方式提出我的問題,Google的DNS服務器怎麼沒有給我返回一個我可以諮詢的域名服務器列表(爲什麼NSCOUNT
0?)?