dig(Domain Information Groper),和nslookup作用有些類似,都是DNS查詢工具
1、dig命令格式
dig @dnsserver name querytype
如果你設置的dnsserver是一個域名,首先通過默認的上連DNS服務器去查詢對應的IP地址,然后再以設置的dnsserver為上連DNS服務器。如果你沒有設置@dnsserver,那么dig就會依次使用/etc/resolv.conf里的地址作為上連DNS服務器
querytype可以設置A/AAAA/PTR/MX/ANY等值,默認是查詢A記錄。
2、常用的選項
參數 說明
-c 可以設置協議類型(class),包括IN(默認)、CH和HS
-f dig支持從一個文件里讀取內容進行批量查詢,這個非常體貼和方便。文件的內容要求一行為一個查詢請求
-t 用來設置查詢類型,默認情況下是A,也可以設置MX等類型
-q -q選項可以顯式設置你要查詢的域名,這樣可以避免和其他眾多的參數、選項相混淆,提高了命令的可讀
-x 是逆向查詢選項。可以查詢IP地址到域名的映射關系
3、查詢案列:
#dig baidu.com -t mx????????查詢baidu的MX記錄
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> baidu.com -t mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;baidu.com. ? ? ? ? ? ? ? ? ? ? IN ? ? ?MX
;; ANSWER SECTION:
baidu.com. ? ? ? ? ? ? ?5 ? ? ? IN ? ? ?MX ? ? ?20 mx1.baidu.com.
baidu.com. ? ? ? ? ? ? ?5 ? ? ? IN ? ? ?MX ? ? ?20 jpmx.baidu.com.
baidu.com. ? ? ? ? ? ? ?5 ? ? ? IN ? ? ?MX ? ? ?10 mx.n.shifen.com.
baidu.com. ? ? ? ? ? ? ?5 ? ? ? IN ? ? ?MX ? ? ?20 mx50.baidu.com.
3、dig特有的查詢選項
+trace ?dig會從根域查詢一直跟蹤直到查詢到最終結果,并將整個過程信息輸出出來。
+nocmd 可以節省輸出dig版本信息。
+short的話 僅會輸出最精簡的CNAME信息和A記錄,其他都不會輸出。
+nocomment的話,可以節省輸出dig的詳情注釋信息
+[no]stats ? 該查詢選項設定顯示統計信息:查詢進行時,應答的大小等等。缺省顯示查詢統計信息。
+[no]nssearch ? 這個選項被設置時,dig 試圖尋找包含待搜名稱的網段的權威域名服務器,并顯示網段中每臺域名服務器的 SOA 記錄。
+[no]recursive ? 切換查詢中的 RD(要求遞歸)位設置。在缺省情況下設置該位,也就是說 dig 正常情形下發送遞歸查詢。當使用查詢選項 +nssearch 或 +trace 時,遞歸自動禁用。
+[no]search ? 使用 [不使用] 搜索列表或 resolv.conf 中的域偽指令(如果有的話)定義的搜索列表。缺省情況不使用搜索列表。
查詢案列
#dig +short?www.baidu.com?僅會輸出baidu精簡的CNAME信息和A記錄
www.a.shifen.com.
119.75.218.77
119.75.217.56
# dig +nocmd +nocomment +nostat www.baidu.com
;www.baidu.com. ? ? ? ? ? ? ? ? IN ? ? ?A
www.baidu.com. ? ? ? ? ?260 ? ? IN ? ? ?CNAME ? www.a.shifen.com.
www.a.shifen.com. ? ? ? 244 ? ? IN ? ? ?A ? ? ? 119.75.217.56
www.a.shifen.com. ? ? ? 244 ? ? IN ? ? ?A ? ? ? 119.75.218.77
#dig @223.5.5.5 www.baidu.com ?+trace+nocmd ? ?從根域查詢一直跟蹤直到查詢到最終結果
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> @223.5.5.5 www.baidu.com trace +nocmd
; (1 server found)
;; global options: +cmd
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?j.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?l.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?e.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?b.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?c.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?h.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?d.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?a.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?f.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?i.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?k.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?g.root-servers.net.
. ? ? ? ? ? ? ? ? ? ? ? 340255 ?IN ? ? ?NS ? ? ?m.root-servers.net.
;; Received 228 bytes from 223.5.5.5#53(223.5.5.5) in 125 ms
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?a.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?b.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?c.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?d.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?e.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?f.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?g.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?h.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?i.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?j.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?k.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?l.gtld-servers.net.
com. ? ? ? ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?m.gtld-servers.net.
;; Received 491 bytes from 199.7.83.42#53(199.7.83.42) in 144 ms
baidu.com. ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?dns.baidu.com.
baidu.com. ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?ns2.baidu.com.
baidu.com. ? ? ? ? ? ? ?172800 ?IN ? ? ?NS ? ? ?ns3.baidu.com.