Linux dig命令 DNS查询(linux dig命令详解)

dns Linux dig命令 DNS查询 在本教程中我们将说明如何在Linux使用DNS查询工具dig。包括在Linux发行版安装dig。了解dig的输出,仅输出应答,详细的应答ANSWER信息 By myfreax 2 Dec 2022

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.confword里列举的域名服务器。

要特殊查询的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
domains.txt

配置 dig

也可以在${HOME}/.digrc文本文档为每一个账号设置选项来调整dig命令的行为。

倘若.digrc文本文档特殊这个功能与用户在命令行特殊选项分歧,则优先使用命令行特殊这个功能。

例如,如果想想打印出回应一部分,挑选你喜欢的文本处理编辑文件,在教学中我们在这里运用vim编辑文件~/.digrc

vim ~/.digrc
 nocmd  noall  answer
~/.digrc

结论

到这里您应该能解决绝大多数与DNS有关问题,如果你钟爱我们自身具体内容,欢迎转发。

LINUX

Linux FTP 命令传输文件(linux传输文件命令)

2023-1-19 8:49:54

LINUX

Linux的cat命令技巧(linux的cat命令)

2023-1-19 8:57:13

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索