◎名稱 dnstracer - trace a chain of DNS servers to the source ◎描述 dnstracer 可以判斷dns server從哪裡取得權威性的DNS紀錄,並將其顯示出來. ◎運作方式 dnstracer經由最初設定的dns伺服器,送出非遞迴的名稱查詢. 非遞迴查詢:若dns伺服器知道查詢的結果,則回傳資料. 若不知道確切的結果,則將dns指標到較接近的伺服器. 若該dns伺服器回應權威性的答案,那麼該伺服器就是查詢的下一站. 若該dns伺服器回應非權威性的答案,則依照該伺服器回應的可能指標繼續查詢. dnstracer這個程式,會在全部權威性dns伺服器查詢結果後停止. 請確認,你最初的查詢dns伺服器沒有將查詢forward到其他dns伺服器. dnstracer將不會發覺有此一改變. dnstracer也會檢測出那些有錯誤的dns伺服器.(那些應該要有dns紀錄,卻沒有的伺服器.) ◎安裝 ( 2004註解:路徑 /usr/ports/dns/dnstop )◎語法 dnstracer [options] name ◎參數 -c 取消local的cache紀錄. -o 在dnstracer的最後產生一個概覽紀錄. -q queryclass 改變查詢的class,預設的class是A. 有下列class可以用 a, aaaa,a6, cname, hinfo, mx, ns, txt. -r retrIEs 查詢失敗,重新查詢的次數.(預設為3次) -s server 設定最初發出查詢的dns伺服器.(預設是系統的dns伺服器) 若採用 . 則表示使用 A.ROOT-SERVERS.NET -t timeout 等待回應的時間(timeout).預設為15秒 -v 是否採用verbose模式. ◎舉例說明 A:以B.ROOTSERVERS.NET為最初的伺服器,查詢ohaha.ks.edu.tw的權威DNS伺服器. # ndstracer -s B.ROOTSERVERS.NET ohaha.ks.edu.tw 可以看出moesun.edu.tw伺服器有cache的狀況.如圖:
B:以B.ROOTSERVERS.NET為最初的伺服器,查詢ohaha.ks.edu.tw的權威DNS伺服器.但配合-c參數,清除cache. # ndstracer -c -s B.ROOTSERVERS.NET ohaha.ks.edu.tw 可以將原先moesun.edu.tw的cache的狀況解析出來.如圖:
C:Lame Server (那些應該要有dns紀錄,卻沒有的伺服器.)
◎作者 Edwin Groothuis, edwin@mavetju.org (http://www.mavetju.org/) ◎參考資料 dnstracer(8)
标签: