dig 用于在 linux 下查询域名解析的信息。
一、基础命令
dig www.guohuawei.com
即查询域名的A记录,查询的 dns 服务器将采用系统配置的服务器,即/etc/resovle.conf 中的。
二、查询其他类型记录
如果要查询其他类型的记录,比如 MX,CNAME,NS,PTR 等,只需将类型加在命令后面即可。
dig www.guohuawei.com mx
dig www.guohuawei.com ns
三、查询指定 dns 服务器的解析
如果你是一个系统管理员,部署好了一台 dns 服务器之后想对它进行解析测试,就必须要显式指定待测试的 dns 服务器地址了,例如:
dig @202.106.0.20 www.guohuawei.com a
四、输出逐级查询的过程
另外一个重要的功能是 +trace 参数,使用这个参数之后将显示从根域逐级查询的过程:
dig www.guohuawei.com a +trace
比如,对域名 www.guohuawei.com A 记录的 trace 查询可以看到根域.,顶级域 .com,以及 guohuawei.com 的域名权威服务器的地址及其各自的返回结果,这样对于追踪 dns 解析中的问题有很大的帮助。
; <<>> DiG 9.10.6 <<>> guohuawei.com +trace
;; global options: +cmd
. 61341 IN NS m.root-servers.net.
. 61341 IN NS i.root-servers.net.
. 61341 IN NS e.root-servers.net.
. 61341 IN NS l.root-servers.net.
. 61341 IN NS d.root-servers.net.
. 61341 IN NS a.root-servers.net.
. 61341 IN NS g.root-servers.net.
. 61341 IN NS b.root-servers.net.
. 61341 IN NS f.root-servers.net.
. 61341 IN NS j.root-servers.net.
. 61341 IN NS c.root-servers.net.
. 61341 IN NS k.root-servers.net.
. 61341 IN NS h.root-servers.net.
;; Received 228 bytes from 192.168.1.1#53(192.168.1.1) in 8 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.
com. 86400 IN DS 30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
com. 86400 IN RRSIG DS 8 1 86400 20190611050000 20190529040000 25266 . Eigc8QOV/Nr0YjVSd8IbNk7RnAuNean6e4qpXej/V09bcPtnOGu8i7zl 4V5tuaBAqbPKed9LTxcyqhTgBqXPMAU2vBqtBj48voFsUKzhlQp5HMwN CgGqpc2vTF0UoZ/omPOYw0P+++1gjXvyLJuqAmOrnxBoMXX09QaN4lSg loX8T8NU/dbpKO/WHsUYkOpHSzLYcxm4eqSbbakcc915VjAwhwY4pSBs ohLmTNnCtma0mPfZPAE8KjoF1I52TFOfwh4BlBvKnFVJXE1LwDn4b3h6 jS681KZQOm+JjHK4lu0Oo+UarWvtdJm4EFw2kYribsRCcnJcfVKLa9uv SQIJ8g==
;; Received 1173 bytes from 199.7.91.13#53(d.root-servers.net) in 233 ms
guohuawei.com. 172800 IN NS dan.ns.cloudflare.com.
guohuawei.com. 172800 IN NS zara.ns.cloudflare.com.
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20190604044533 20190528033533 3800 com. YQdumHEEUmzxuBxPBgehzu4J2IUp49V8I/9jmOCeLkaXkjaIBpU6eEFg dS5HTiEjHIzJaQeCvih3VmXTdYlUj9exoNz5anezyE913cr9EAczipcN wM18pVhvJMAwNyc+vpKKquwEKb13smt8hVaezr+KRyVxG0cZSxb1IX/6 IO4=
RM7TI8631VFRPOU55KFMOFT3D91LITIP.com. 86400 IN NSEC3 1 1 0 - RM7TUTM87U3I48029OCNGJ1SF3U2LHLJ NS DS RRSIG
RM7TI8631VFRPOU55KFMOFT3D91LITIP.com. 86400 IN RRSIG NSEC3 8 2 86400 20190603043659 20190527032659 3800 com. AiI4JLNemP1Lexi9c5fSvZCCRAKyT2v/qs703F9ToWC1NVGYvYGR/Jrg asfAFJFd/lFMHQ5zPAqY4ecUN+5GoBRnWqjc5G8j+tH0Bd+YAjasR6uB m1C6CWS5HkNeQgKCrE03Ju+nfHnSfsvtBZvYm4MZoUb9UHAWMK/Eg+z8 XAk=
;; Received 666 bytes from 192.52.178.30#53(k.gtld-servers.net) in 192 ms
guohuawei.com. 300 IN A 104.31.79.160
guohuawei.com. 300 IN A 104.31.78.160
;; Received 74 bytes from 173.245.59.108#53(dan.ns.cloudflare.com) in 193 ms
五、域名不存在时
比如解析 bucunzaiba.com 这个域名, 整个过程如下:
- 由根域名返回.com顶级域的服务器地址
- 由.com顶级域查到二级域名不存在,返回一条SOA记录
如:
dig bucunzaiba.com +trace
; <<>> DiG 9.10.6 <<>> bucunzaiba.com +trace
;; global options: +cmd
. 61015 IN NS m.root-servers.net.
. 61015 IN NS i.root-servers.net.
......
com. 900 IN SOA a.gtld-servers.net. nstld.verisign-grs.com. 1559124593 1800 900 604800 86400
com. 900 IN RRSIG SOA 8 1 900 20190605100953 20190529085953 3800