Dig全称Domain Information Groper。是一个功能齐全命令行常用工具,用于查询DNS域名服务器。
运用dig命令,你们可以查询各式各样DNS记载的信息,包括主机地址,电子邮箱交换和域名服务器。
这也是系统管理员中用于消除DNS难点最常用工具,它具很高的灵活性和便利性。
在教学中我们在这里说明如何在Linux运用dig命令查询DNS。包含于Linux发行版组装dig。把握dig的输出,仅导出来回应,详细的回应ANSWER信息。
特殊域名服务器查询,把握DNS记录类型,查询CNAME纪录,查询TXT纪录,大批查询,反向DNS检索,查询所有纪录,查询NS纪录,查询MX纪录,配置dig。
组装 dig命令
你可以运作命令dig -v
检查dig版本信息来验证你系统是否已下载dig。如果你系统早就组装dig命令,dig -v
命令很有可能打印出版本号信息DiG 9.11.3-1ubuntu1.1-Ubuntu
。
假如你Linux系统也是有没有安装dig命令,dig -v
命令很有可能打印出dig: command not found
,则能用发行版的app包管理器来组装它。
如果你计算机运行就是指依据Debian的Linux发行版,比如Ubuntu,Linux mint。请运作命令sudo apt install dnsutils
组装dig。
如果你计算机运行就是指依据RedHat的Linux发行版,比如CentOS,Fedora等发行版,请运作命令sudo yum install bind-utils
组装dig。
如果你是Arch用户可以运作命令sudo pacman -S bind-tools
组装dig。
sudo apt install dnsutils
sudo yum install bind-utils
sudo pacman -S bind-tools
把握dig导出来
运用dig命令的有效的方法,不指定一切选项运作dig命令。dig命令打印出非常详细的输出。例如命令dig linux.org
很有可能查询linux.org
域的信息。
dig linux.org
; <<>> DiG 9.10.3-P4-Ubuntu <<>> linux.org
;; global options: cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57452
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;linux.org.IN A
;; ANSWER SECTION:
linux.org.300 IN A 104.27.167.219
linux.org.300 IN A 104.27.166.219
;; Query time: 256 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jul 19 11:12:41 CST 2019
;; MSG SIZE rcvd: 59
导出第一行打印出已下载的dig版本号信息以及运行的DNS查询。第二行说明全面性选项,默认是cmd。
如果不想让第二行包含在导出来中,能用 nocmd
选项。此选项一定要dig
命令后的第一个基本参数。
Got Answer回应包括从规定授权后来自DNS网站服务器回复信息实际信息。此一部分第一行是标题,包括操作码(由dig开展的操作控制操作过程情况。
状况NOERROR
代表了所需要都已授权查询并且没有任何问题。能用 nocomments
选项删除回复信息导出。
OPT PSEUDOSECTION此一部分仅在较新dig版本信息说明。你会在这里阅读DNS扩展体系EDNS深层次的信息。如果不想让此一部分包含在导出来中,挑选 noedns
选项。
QUESTION说明dig命令要查询记录类型。默认是A纪录,您可以使用 noquestion
选项禁用此一部分的输出。
ANSWER章节为我们提供了一个回应。好似大伙儿提到的,默认情况下dig
都会要求A纪录。这里域linux.org
偏重IP地址104.18.59.123
。
如果你想关闭ANSWER导出来,能用 noanswer
选项从导出来中清除此一部分。
AUTHORITY SECTION告诉我们什么服务器是回应有询域的DNS的AUTHORITY
。您可以使用 noauthority
选项禁用导出此一部分。
ADDITIONAL SECTION为我们提供了有关AUTHORITY DNS云主机IP地址的信息。
Query time那也是dig导出最后一部分,主要包括查询的统计信息。您可以使用 nostats
选项禁用此信息。
仅导出来回应ANSWER
在大多数情况下,您要的是快速查询ANSWER SECTION,要想得到查询的简单明了回应ANSWER。
挑选dig命令的 short
选项,例如命令dig linux.org short
仅打印出A记载的IP地址。
104.18.59.123
104.18.58.123
详细的回应ANSWER
必须更详细的ANSWER回应信息,挑选dig命令的 noall
选项关闭结果,接着仅运用 answer
选项,开展ANSWER的实际信息。
dig linux.org noall answer
; <<>> DiG 9.13.3 <<>> linux.org noall answer
;; global options: cmd
linux.org.67 IN A 104.18.58.123
linux.org.67 IN A 104.18.59.123
特殊域名服务器查询
默认情况下,倘若未找到DNS网站服务器,dig将使用/etc/resolv.conf
word里列举的域名服务器。
要特殊查询的DNS网站服务器,挑选@
标识,脚后跟域名服务器IP地址或主机名运作dig命令。
例如命令dig linux.org @8.8.8.8
运用Google DNS网站服务器8.8.8.8
查询linux.org
域名信息。
dig linux.org @8.8.8.8
DNS 纪录类型
Dig命令允许大家可以将纪录类型附加到查询末尾来运作特殊DNS纪录类型的查询。再下一节中,我们在这里为大家呈现如何搜索常见的纪录。
例如A纪录(IP地址,CNAME(别名,TXT(文字描述,MX纪录(电子邮箱交换和NS(域名服务器纪录。
查询A纪录
得到域名的所有A纪录具体地址,挑选dig
命令的a
选项。倘若未找到DNS纪录类型,dig将规定A纪录。
您也可以在没有任何特殊a
选项查询A纪录,运作命令dig nocmd google.com a noall answer
。
dig nocmd google.com a noall answer
google.com.300 IN A 172.217.27.46
查询CNAME别名纪录
要搜索特殊域名的别名纪录,挑选dig
命令的cname
选项。
命令dig nocmd mail.google.com cname noall answer
很有可能查询mail.google.com的别名纪录。
dig nocmd mail.google.com cname noall answer
查询TXT纪录
运用dig命令的txt
选项可搜索特殊域名的所有TXT纪录。
dig nocmd google.com txt noall answer
查询MX纪录
得到特殊域名所有邮箱服务器文件目录,挑选dig命令的mx
选项。
dig nocmd google.com mx noall answer
查询NS纪录
要搜索特殊域的名称服务器,挑选dig命令的ns
选项。
dig nocmd google.com ns noall answer
google.com.84527 IN NS ns1.google.com.
google.com.84527 IN NS ns2.google.com.
google.com.84527 IN NS ns4.google.com.
google.com.84527 IN NS ns3.google.com.
查询所有纪录
运用any
选项可得到特殊域名的所有DNS纪录。
dig nocmd google.com any noall answer
反向DNS检索
要查询与特殊IP地址关系主机名或者域名,能用dig命令的-x
选项,推行反向DNS描述。
例如命令dig -x 208.118.235.148 noall answer
推行反向DNS描述,检索ip具体地址208.118.235.148
的域名。
从导出来中可以看到IP地址208.118.235.148
与主机名wildebeest.gnu.org
息息相关。
dig -x 208.118.235.148 noall answer
; <<>> DiG 9.13.3 <<>> -x 208.118.235.148 noall answer
;; global options: cmd
148.235.118.208.in-addr.arpa. 245 IN PTR wildebeest.gnu.org.
大批查询
如果要运用dig命令查询很多域名,能把她们导到word里,每行一个域名,然后使用dig的-f
选项特殊文件名。
例如命令dig -f domains.txt short
查询domains.txt
文档信息所有域名。
dig -f domains.txt short
google.com
myfreax.com
linux.org
配置 dig
也可以在${HOME}/.digrc
文本文档为每一个账号设置选项来调整dig命令的行为。
倘若.digrc
文本文档特殊这个功能与用户在命令行特殊选项分歧,则优先使用命令行特殊这个功能。
例如,如果想想打印出回应一部分,挑选你喜欢的文本处理编辑文件,在教学中我们在这里运用vim编辑文件~/.digrc
。
vim ~/.digrc
nocmd noall answer
结论
到这里您应该能解决绝大多数与DNS有关问题,如果你钟爱我们自身具体内容,欢迎转发。
