在Linux下Ubuntu10.10下没有dig命令,而Debian6下面有这个命令
而ubuntu或者Debian9下想要apt-get安装,发现没有找到dig软件包
在Debian9下安装dig,搜索后才发现正确安装是安装dnsutils
apt-get install dnsutils
PS:redhat系列这样安装
yum install bind-utils
看看dig命令大多时候如何可以取代nslookup的
root@www:~# dig chuill.com
; <<>> DiG 9.7.1-P2 <<>> chuill.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58809
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 2
;; QUESTION SECTION:
;sina.com. IN A
;; ANSWER SECTION:
sina.com. 60 IN A 12.130.132.30
;; AUTHORITY SECTION:
sina.com. 600 IN NS ns3.sina.com.cn.
sina.com. 600 IN NS ns1.sina.com.
sina.com. 600 IN NS ns2.sina.com.cn.
sina.com. 600 IN NS ns2.sina.com.
sina.com. 600 IN NS ns1.sina.com.cn.
;; ADDITIONAL SECTION:
ns1.sina.com. 60 IN A 114.134.80.144
ns2.sina.com. 60 IN A 114.134.80.145
;; Query time: 255 msec
;; SERVER: 208.87.241.170#53(208.87.241.170)
;; WHEN: Thu Nov 3 22:18:19 2011
;; MSG SIZE rcvd: 175
简明使用,只会输出A记录(写脚本的时候容易获取ip地址)
dig chuill.com +short
只输出mx记录,简明使用
dig mx chuill.com +short
只输出NS记录
dig ns chuill.com
查询SOA( Start of Autority ) 返回主DNS服务器
dig soa chuill.com
指定dns,例如查询8.8.8.8中的jpuyy.com记录
dig +short @8.8.8.8 chuill.com
大部分的时候dig最下面显示了查询所用的时间及DNS服务器,时间,数据大小。DNS超时时间为30秒,查询时间对于排查DNS问题很有用。
;; Query time: 48 msec
;; SERVER: 10.202.72.118#53(10.202.72.118)
;; WHEN: Sun Oct 12 21:41:47 2014
;; MSG SIZE rcvd: 225
DNS的解析是递规解析,那么用dig可以加+trace参数,会显示完整的,无缓存,递规的查询,显示的是完整的trace记录。
可以发现本地DNS(10.202.72.118)返回了根服务器列表,在一台根服务器(199.7.91.13)查到com.的记录,在其中一台com.中查到了jpuyy.com并返回了NS记录,在NS中找到了A记录。
dig chuill.com +trace
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> jpuyy.com +trace
;; global options: +cmd
. 493573 IN NS i.root-servers.net.
. 493573 IN NS e.root-servers.net.
. 493573 IN NS k.root-servers.net.
. 493573 IN NS c.root-servers.net.
. 493573 IN NS f.root-servers.net.
. 493573 IN NS d.root-servers.net.
. 493573 IN NS m.root-servers.net.
. 493573 IN NS j.root-servers.net.
. 493573 IN NS g.root-servers.net.
. 493573 IN NS b.root-servers.net.
. 493573 IN NS h.root-servers.net.
. 493573 IN NS a.root-servers.net.
. 493573 IN NS l.root-servers.net.
;; Received 496 bytes from 10.202.72.118#53(10.202.72.118) in 1 ms
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
;; Received 487 bytes from 199.7.91.13#53(199.7.91.13) in 162 ms
jpuyy.com. 172800 IN NS f1g1ns1.dnspod.net.
jpuyy.com. 172800 IN NS f1g1ns2.dnspod.net.
;; Received 209 bytes from 192.5.6.30#53(192.5.6.30) in 298 ms
jpuyy.com. 600 IN A 114.215.158.48
;; Received 43 bytes from 112.90.143.29#53(112.90.143.29) in 38 ms
服务器上很多时候是双线或三线,如果有智能解析的话要测试从某一个 ip 去请求 dns,加 -b 参数
dig -b chuill.com