DIG命令的使用

本文详细介绍了DIG命令的使用方法,包括直接查询、选择性显示、查询指定内容、处理多个域及反向查询。通过示例展示如何利用DIG进行网络攻防中的DNS查询,以提升渗透测试效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DIG命令的使用

1 直接查询

基本格式:dig [@server] host

例子:

$ dig www.nju.edu.cn

; <<>> DiG 9.16.12-Debian <<>> www.nju.edu.cn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36607
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.nju.edu.cn.			IN	A

;; ANSWER SECTION:
www.nju.edu.cn.		3600	IN	A	202.119.32.7

;; Query time: 36 msec
;; SERVER: 10.211.55.1#53(10.211.55.1)
;; WHEN: 五 10月 01 13:11:46 CST 2021
;; MSG SIZE  rcvd: 59

下面对dig的返回信息做一个简单的说明:

标头(header)部分:

; <<>> DiG 9.16.12-Debian <<>> www.nju.edu.cn # dig版本和要查询的域
;; global options: +cmd # 全局选项,dig可以查询多个域,这里显示应用于所有查询的选项,默认为+cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36607
# 操作码可以是:QUERY查询,IQUERY反查询,STATUS监测状态等等。
# 状态:NOERROR表示请求已正常解决
# id是一个随机的将请求与响应绑定在一起的数字
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
# 各标志位含义:
# qr = query, rd = recursion desired, ra = recursion avaliable
# aa = authoritative answer 代表权威域名服务器作出了响应
# 递归和迭代是DNS查询的两种形式
# QUERY代表查询数量,ANSWER代表结果数量,
# AURHORITY表示来自权威域名服务器的结果数量
# 为0说明该响应是从DNS前体服务器的缓存返回的,答复中将没有权威部分
# ADDITIONAL表示附加信息,当其值大于1的时候才会看到额外信息

选择伪切片 (Opt Pseudosection):

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
# EDNS(EDNS = Extended DNS)通过扩展用户数据报协议(UDP = User Data Protocol)数据包的大小来传输扩展的数据和标志
# flags这里为空,udp数据包大小为4096

问题部分(Question Section)

;; QUESTION SECTION:
;www.nju.edu.cn.			IN	A
# www.nju.edu.cn是正在查询的域名
# IN = Internet 表示互联网查询
# A = Address 除非我们另外指定,否则dig将向DNS服务器请求A(地址)记录。

答案部分(Answer Section)

;; ANSWER SECTION:
www.nju.edu.cn.		3600	IN	A	202.119.32.7
# 3600是TTL = Time To Live,32位有符号整数,包含可以缓存记录的时间间隔

统计科(Statistics Section)

;; Query time: 36 msec
;; SERVER: 10.211.55.1#53(10.211.55.1)
;; WHEN: 五 10月 01 13:11:46 CST 2021
;; MSG SIZE  rcvd: 59
# Message Size Received from Server

2 选择显示

基本格式:dig [@server] host [+options]

常用选项:

选项含义
+[no]comments(不)显示评论行
+[no]authority(不)显示权威部分
+[no]additional(不)显示其他部分
+[no]stats(不)显示统计信息
+[no]answer(不)显示答案部分
+[no]all(不)显示所有内容

我们可以通过上述命令的组合来控制显示特定内容,注意参数先后顺序代表生效次序。

例子:

$ dig @114.114.114.114 www.nju.edu.cn +noall +answer 
# 只显示答案
www.nju.edu.cn.		2561	IN	A	202.119.32.7

3 查询指定内容

基本格式:dig [@server] host record [+options]

常用的DNS记录:

记录内容
A = AddressIPv4地址
MX = Mail Exchange将发送到域的直接电子邮件记录到正确的服务器
NS = Name Server将域(或子域)委托给一组DNS服务器
TXT = Text储存有关域的基于文本的信息
SOA = Start Of Authority保存有关该域的许多信息,包括主要名称服务器、负责方、更改的时间戳记以及重试和放弃的一系时间限制。
TTL = Time To Live指定允许DNS前体服务器缓存每个DNS查询多长时间
ANY返回任何类型的可以找到的信息

例子:

$ dig nju.edu.cn mx +noall +answer
nju.edu.cn.		3600	IN	MX	5 mxbiz1.qq.com.
nju.edu.cn.		3600	IN	MX	10 mxbiz2.qq.com.

$ dig nju.edu.cn ns +noall +answer
nju.edu.cn.		3600	IN	NS	dns.nju.edu.cn.
nju.edu.cn.		3600	IN	NS	ns.nju.edu.cn.

$ dig nju.edu.cn soa +noall +answer
nju.edu.cn.		3600	IN	SOA	ns.nju.edu.cn. mail.nju.edu.cn. 3487 28800 3600 604800 1800

$ dig +noall +answer nju.edu.cn txt                  
nju.edu.cn.		3600	IN	TXT	"v=spf1 include:spf.mail.qq.com ~all"

4 查询多个域

基本格式: dig host

例子:

$ dig www.nju.edu.cn www.baidu.com www.google.com               

; <<>> DiG 9.16.12-Debian <<>> www.nju.edu.cn www.baidu.com www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41758
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.nju.edu.cn.			IN	A

;; ANSWER SECTION:
www.nju.edu.cn.		3600	IN	A	202.119.32.7

;; Query time: 12 msec
;; SERVER: 10.211.55.1#53(10.211.55.1)
;; WHEN: 五 10月 01 15:25:34 CST 2021
;; MSG SIZE  rcvd: 59

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26886
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.			IN	A

;; ANSWER SECTION:
www.baidu.com.		947	IN	CNAME	www.a.shifen.com.
www.a.shifen.com.	47	IN	A	36.152.44.95
www.a.shifen.com.	47	IN	A	36.152.44.96

;; Query time: 4 msec
;; SERVER: 10.211.55.1#53(10.211.55.1)
;; WHEN: 五 10月 01 15:25:34 CST 2021
;; MSG SIZE  rcvd: 101

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55010
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.google.com.			IN	A

;; ANSWER SECTION:
www.google.com.		11	IN	A	74.86.17.48

;; Query time: 4 msec
;; SERVER: 10.211.55.1#53(10.211.55.1)
;; WHEN: 五 10月 01 15:25:34 CST 2021
;; MSG SIZE  rcvd: 59

也可以将多个域存在文件中,不过此时需要加上参数-f,例如:

$ cat hosts.txt 
www.nju.edu.cn
www.baidu.com
www.google.com

$ dig -f hosts.txt +noall +answer
www.nju.edu.cn.		3600	IN	A	202.119.32.7
www.baidu.com.		1094	IN	CNAME	www.a.shifen.com.
www.a.shifen.com.	42	IN	A	36.152.44.96
www.a.shifen.com.	42	IN	A	36.152.44.95
www.google.com.		21	IN	A	199.59.149.136

5 反向查询

添加参数-x可以查询对应地址的域名,其他选项和参数同上。

$ dig -x 202.119.32.7 +noall +answer
7.32.119.202.in-addr.arpa. 3600	IN	PTR	mpacc.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	dawww.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	capds.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	sfs.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	blockchainfintech.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	cydgw.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	obeyond.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	logic.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	nic.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	bksy.nju.edu.cn.119.202.in-addr.arpa.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	hnchome.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	lmswe.nju.edu.cn.119.202.in-addr.arpa.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	life.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	molpharm.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	critical-elements.nju.edu.cn.119.202.in-addr.arpa.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	ius.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	kcsz.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	phylab.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	ensklpcrr.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	ndsc.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	ccmp.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	macrolinguistics.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	orgchem.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	ascs.nju.edu.cn.119.202.in-addr.arpa.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	dii.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	yjzz.nju.edu.cn.119.202.in-addr.arpa.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	jsasacd.nju.edu.cn.119.202.in-addr.arpa.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	aiblockchainfintech.nju.edu.cn.
7.32.119.202.in-addr.arpa. 3600	IN	PTR	sklcc.nju.edu.cn.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值