文章目录
dig指令有哪些作用dig 具体用法推荐阅读
dig指令有哪些作用
DIG命令(Domain Information Groper命令)是一个网络工具,具有基本的命令行接口,用于进行不同的DNS(域名系统)查询。您可以使用DIG命令:
诊断您的域名服务器。检查所有这些服务器或每个单独的服务器及其响应。检查所有可用的DNS记录或单个DNS记录及其参数。跟踪IP地址并查看与之对应的主机名。通过想要使用的特定端口执行查询。查看DNS记录的TTL值,并了解它们刷新的频率。跟踪DNS查询的路由。dig 具体用法
1. dig domain.com
范例:dig www.baidu.com
mirror@Ubuntu22:~$ dig www.baidu.com; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> www.baidu.com;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2424;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 512;; QUESTION SECTION:;www.baidu.com. IN A;; ANSWER SECTION:www.baidu.com. 1146 IN CNAME www.a.shifen.com.www.a.shifen.com. 38 IN A 153.3.238.102www.a.shifen.com. 38 IN A 153.3.238.110;; Query time: 40 msec;; SERVER: 114.114.114.114#53(114.114.114.114) (UDP);; WHEN: Mon Nov 27 15:13:05 CST 2023;; MSG SIZE rcvd: 101mirror@Ubuntu22:~$
2. dig domain.com +short
范例:dig www.baidu.com +short
mirror@Ubuntu22:~$ dig www.baidu.com +shortwww.a.shifen.com.153.3.238.102153.3.238.110mirror@Ubuntu22:~$
只显示 IP 地址,而不显示任何其他信息。快速且易于使用的,基本上只有 A 记录。
3. dig domain.com MX
范例:dig google.com MX
测试了百度和163,都没有MX记录,最后找到用Google可以看到有MX记录。
mirror@Ubuntu22:~$ dig google.com MX; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> google.com MX;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8524;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 512;; QUESTION SECTION:;google.com. IN MX;; ANSWER SECTION:google.com. 35 IN MX 10 smtp.google.com.;; Query time: 40 msec;; SERVER: 114.114.114.114#53(114.114.114.114) (UDP);; WHEN: Mon Nov 27 15:19:26 CST 2023;; MSG SIZE rcvd: 60mirror@Ubuntu22:~$
可以查询不同类型的记录,例如邮件交换器记录。MX 记录显示负责接受电子邮件的邮件服务器。您可以查看所有服务器是否都正常工作以及响应是否太慢。
4. dig domain.com SOA
范例:dig www.163.com SOA
mirror@Ubuntu22:~$ dig www.163.com SOA; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> www.163.com SOA;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47476;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 1, ADDITIONAL: 0;; QUESTION SECTION:;www.163.com. IN SOA;; ANSWER SECTION:www.163.com. 298 IN CNAME www.163.com.163jiasu.com.www.163.com.163jiasu.com. 572 IN CNAME www.163.com.bsgslb.cn.www.163.com.bsgslb.cn. 17 IN CNAME z163picipv6.v.bsgslb.cn.;; AUTHORITY SECTION:v.bsgslb.cn. 600 IN SOA vns1.bsgslb.cn. gtm.baishan.com. 1669778000 86400 3600 604800 300;; Query time: 88 msec;; SERVER: 114.114.114.114#53(114.114.114.114) (UDP);; WHEN: Mon Nov 27 15:29:10 CST 2023;; MSG SIZE rcvd: 180mirror@Ubuntu22:~$
SOA——权威的开始,显示权威的DNS服务器。在此记录中,您可以看到有关该区域的有价值的信息。每个区域只有一个 SOA。
5. dig domain.com TTL
范例:dig www.163.com TTL
TTL——生存时间。它显示数据应保留多长时间。将TTL值适当的增加,可以降低DNS服务器的负载,也可以为不同的DNS配置不同的TTL。
6. dig domain.com +nocomments +noquestion +noauthority +noadditional +nostats
范例:dig google.com +nocomments +noquestion +noauthority +noadditional +nostats
mirror@Ubuntu22:~$ dig google.com +nocomments +noquestion +noauthority +noadditional +nostats; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> google.com +nocomments +noquestion +noauthority +noadditional +nostats;; global options: +cmdgoogle.com. 35 IN A 172.217.160.78mirror@Ubuntu22:~$
只回答查询结果。可以减少很多额外的统计数据。
7. dig -x IPaddress
范例:dig -x 114.114.114.114
反向查找。如果DNS记录有PTR记录,那么可以用这个指令查找IP对应的域名信息。通过反向查找114.114.114.114 的域名为:public1.114dns.com
8. dig @dnsserver domain.com
范例1:dig @8.8.8.8 www.baidu.com
范例2:dig @114.114.114.114 www.baidu.com
指定DNS服务器对相同的域名解析。这个方法可以帮助判断一些网络缓慢或者访问异常的问题。
9. dig +trace domain.com
范例:dig +trace baidu.com
跟踪DNS路径。将显示 DNS 查询所采用的整个路由。可以帮助查找DNS解析失败的位置。
10. dig -p 5300 www.baidu.com
mirror@Ubuntu22:~$ dig -p 5300 baidu.com;; communications error to 114.114.114.114#5300: timed out;; communications error to 114.114.114.114#5300: timed out;; communications error to 114.114.114.114#5300: timed out; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> -p 5300 baidu.com;; global options: +cmd;; no servers could be reachedmirror@Ubuntu22:~$
指定端口号。如果您已将DNS服务标准端口 53 更改为另一个自定义端口以提高安全性,则可以使用 dig 命令来检查这个端口是否正常工作。
11. dig _sip._udp.yourdomain.com SRV
范例:dig _sip._udp.baidu.com SRV
mirror@Ubuntu22:~$ dig _sip._udp.baidu.com SRV; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> _sip._udp.baidu.com SRV;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 50392;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 512;; QUESTION SECTION:;_sip._udp.baidu.com. IN SRV;; AUTHORITY SECTION:baidu.com. 3544 IN SOA dns.baidu.com. sa.baidu.com. 2012147583 300 300 2592000 7200;; Query time: 37 msec;; SERVER: 114.114.114.114#53(114.114.114.114) (UDP);; WHEN: Mon Nov 27 15:49:06 CST 2023;; MSG SIZE rcvd: 91mirror@Ubuntu22:~$
使用此命令可以检查SRV记录。SRV记录经常用于 VoIP。在此示例中,表示我们正在使用 UDP 协议检查SIP服务是否正常。答案将显示响应时间以及负责 SIP 服务的服务器的 IP。
12. dig domain.com TXT
范例:dig google.com TXT
测试的时候,用baidu没有TXT记录,应该是么有开放查询,改用了Google。
mirror@Ubuntu22:~$ dig google.com TXT; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> google.com TXT;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33409;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 512;; QUESTION SECTION:;google.com. IN TXT;; ANSWER SECTION:google.com. 280 IN TXT "facebook-domain-verification=22rm551cu4k0ab0bxsw536tlds4h95"google.com. 280 IN TXT "apple-domain-verification=30afIBcvSuDV2PLX"google.com. 280 IN TXT "docusign=05958488-4752-4ef2-95eb-aa7ba8a3bd0e"google.com. 280 IN TXT "google-site-verification=TV9-DBe4R80X4v0M4U_bd_J9cpOJM0nikft0jAgjmsQ"google.com. 280 IN TXT "docusign=1b0a6754-49b1-4db5-8540-d2c12664b289"google.com. 280 IN TXT "webexdomainverification.8YX6G=6e6922db-e3e6-4a36-904e-a805c28087fa";; Query time: 43 msec;; SERVER: 114.114.114.114#53(114.114.114.114) (UDP);; WHEN: Mon Nov 27 15:50:42 CST 2023;; MSG SIZE rcvd: 442mirror@Ubuntu22:~$
查看所有 TXT 记录,TXT 记录可用于验证,并且可以有不同的变体。
13. dig _dmarc.domain.com TXT
范例:dig _dmarc.google.com TXT
mirror@Ubuntu22:~$ dig _dmarc.google.com TXT; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> _dmarc.google.com TXT;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37953;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0;; QUESTION SECTION:;_dmarc.google.com. IN TXT;; ANSWER SECTION:_dmarc.google.com. 300 IN TXT "v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com";; Query time: 90 msec;; SERVER: 114.114.114.114#53(114.114.114.114) (UDP);; WHEN: Mon Nov 27 15:52:21 CST 2023;; MSG SIZE rcvd: 106mirror@Ubuntu22:~$