DNStool dig

dig

常用參數
Usage:
dig [@global-server] [domain] [q-type] [q-class] {q-opt}
{global-d-opt} host [@local-server] {local-d-opt}
[ host [@local-server] {local-d-opt} […]]

…………………………..

常見用法

正解查詢
dig [@dns] < domain>
ex:
用預設的dns查詢
dig systw.net
ex:
使用168.95.1.1這台DNS查詢systw.net這一台主機
dig @168.95.1.1 systw.net

反解查詢
dig [@dns] -x < ip>
ex:
使用168.95.1.1這台DNS查詢 140.127.243.65 這一台主機
dig @168.95.1.1 -x 140.127.243.65

ps:+short可顯示精簡結果
ex:dig -x 140.127.243.65 +short

根據rr查詢
dig [@dns] < domain > < rr>

rr的值有ANY,MX,NS,A
ex:
使用168.95.1.1這台DNS查詢systw.net網域的DNS 及 Mail 主機
dig @168.95.1.1 systw.net ns
dig @168.95.1.1 systw.net mx

從根服務器開始追蹤domain的解析過程
dig [@dns] < domain > +trace

ex:
對systw.net進行追蹤查詢
dig @168.95.1.1 systw.net +trace

查看bind版本
dig [@bind_dns_server] CHAOS TXT

ex:dig txt chaos systw.net
顯示systw.net透過bind9.3.6
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_4.2 <<>> txt chaos systw.net
以下略

搜尋一個domain的soa
dig < domain > +nssearch

ex:dig systw.net. +nssearch
SOA localhost@. hostmaster.systw.net. 1284885634 10800 3600 604800 3600 from server pdns1.pchome.com.tw in 41 ms.
SOA localhost@. hostmaster.systw.net. 1284885634 10800 3600 604800 3600 from server pdns2.pchome.com.tw in 1 ms.

執行zone transfer取得DNS伺服器的所有註冊資料
dig [$dns] < domain> -t axfr

ex:
dig @dns.systw.net systw.net -t axfr 

refer
https://net.nthu.edu.tw/2009/dns:bind_zone_transfer 

…………………………..

dig顯示結果說明
以systw.net為例
#dig systw.net.
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_4.2 <<>> systw.net
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24974
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2
//flags aa表示Authoritative Answer,也就是由表示透過權威server查詢,若透過cache查詢則不會有aa,ttl減少也不會有aa flag

;; QUESTION SECTION:
;systw.net. IN A
//查詢問的問題是systw.net, A表示此次查詢的Record Type是A(Address 的意思),ps:dig預設查詢的Record Type是A

;; ANSWER SECTION:
systw.net. 3600 IN A 203.71.63.36
//回答systw.net的A 紀錄得到 IP 是 203.71.63.36,86400是TTL單位是以秒計算,TTL的意思是查詢到此紀錄以後,此紀錄的存活時間,也就是快取下來這筆紀錄會保留多久

;; AUTHORITY SECTION:
systw.net. 3600 IN NS pdns1.pchome.com.tw.
systw.net. 3600 IN NS pdns2.pchome.com.tw.
//回答systw.net這筆紀錄是由這兩台NS(Name Server,名稱解析伺服器)pdns1.pchome.com.tw和pdns2.pchome.com.tw其中一台所回答
ps:回應所有systw.net 結尾的紀錄應該都是由 pdns1.pchome.com.tw 與 pdns2.pchome.com.tw 這兩台所回答的
ps:若是這兩台有做delegate subdomain(授權子網域)的動作,就有可能由別台Name Server回答

;; ADDITIONAL SECTION:
pdns1.pchome.com.tw. 3600 IN A 220.228.8.150
pdns2.pchome.com.tw. 3600 IN A 220.228.8.151

;; Query time: 0 msec
;; SERVER: 168.95.1.1#53(168.95.1.1) 由伺服器 168.95.1.1 的 53 埠 UDP 方式回答的。
;; WHEN: Sun May 2 21:45:04 2010
;; MSG SIZE rcvd: 128


ps:
要求dns做第2次重覆查詢時,會顯示cache的結果,並且ttl值會減少,一但ttl值秒數歸零才不會顯示cache結果
ex:dig systw.net
直接對管理範圍的dns做第2次重覆查詢,會直接回答,而不會顯示cache結果,因此ttl值不會減少
ex:dig systw.net @dns.hinet.net

ps:參考網站
http://www.babyface.idv.tw/NetAdmin/32200809dns01/
http://www.babyface.idv.tw/NetAdmin/34200811dns03/