dig命令是查询DNS最好的朋友,这个和windows上的Nslookup命令比强大很多。默认linux的一般都已有安装,如果是精简的版本,安装一下即可。

centos安装命令:yum install bind-utils

debian安装:apt-get install dnsutils


查本机版本:

dig -v


查一个域名:

dig www.gmail.com


dig www.gmail.com
; <<>> DiG 9.9.5-9+deb8u14-Debian <<>> www.gmail.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57472
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.gmail.com.INA
;; ANSWER SECTION:
www.gmail.com.21599INCNAMEmail.google.com.
mail.google.com.21599INCNAMEgooglemail.l.google.com.
googlemail.l.google.com. 299INA216.58.221.229
;; Query time: 18 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Jan 21 10:30:38 EST 2018
;; MSG SIZE  rcvd: 111

查解析值类型

dig a/mx/cname/txt/ns gmail.com

dig mx gmail.com
; <<>> DiG 9.9.5-9+deb8u14-Debian <<>> mx gmail.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52030
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;gmail.com.INMX
;; ANSWER SECTION:
gmail.com.3599INMX40 alt4.gmail-smtp-in.l.google.com.
gmail.com.3599INMX20 alt2.gmail-smtp-in.l.google.com.
gmail.com.3599INMX10 alt1.gmail-smtp-in.l.google.com.
gmail.com.3599INMX30 alt3.gmail-smtp-in.l.google.com.
gmail.com.3599INMX5 gmail-smtp-in.l.google.com.
;; Query time: 18 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Jan 21 10:32:44 EST 2018
;; MSG SIZE  rcvd: 161

查IP反解

dig -x IP

dig -x 8.8.8.8
; <<>> DiG 9.9.5-9+deb8u14-Debian <<>> -x 8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47223
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;8.8.8.8.in-addr.arpa.INPTR
;; ANSWER SECTION:
8.8.8.8.in-addr.arpa.21599INPTRgoogle-public-dns-a.google.com.
;; Query time: 20 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Jan 21 10:33:55 EST 2018
;; MSG SIZE  rcvd: 93

只想看精简信息末尾加

+short

例如:dig mx qq.com +short


指定DNS服务器查询命令

@NS地址,例如:dig a qq.com @8.8.8.8


DNS的解析是递规解析,可加+tracer进行完整无缓冲查询

例如:dig a qq.com +trace


最后下一篇我们将介绍模拟IP查询DNS解析记录值