Linux命令之dig命令

2024-12-10 14:28:31 949

Linux命令之dig命令

 

欢迎来到蓝队云技术小课堂,每天分享一个技术小知识。

介绍

 `dig`是Linux下强大的DNS查询工具,适用于系统管理员、网络工程师和开发者。它支持查询A、MX、NS、CNAME等记录类型,以及反向DNS。高级功能包括跟踪查询过程、显示额外信息、指定查询服务器和批量查询。学习`dig`能助你更好地理解DNS工作原理和优化网络问题。


1、作用

查询 DNS 包括 NS 记录,A 记录,MX 记录等相关信息的工具。

 

2、选项

@<服务器地址>:指定进行域名解析的域名服务器;

-b<ip地址>:当主机具有多个IP地址,指定使用本机的哪个IP地址向域名服务器发送域名查询请求;

-f<文件名称>:指定dig以批处理的方式运行,指定的文件中保存着需要批处理查询的DNS任务信息;

-P:指定域名服务器所使用端口号;

-t<类型>:指定要查询的DNS数据类型;

-x<IP地址>:执行逆向域名查询;

-4:使用IPv4;

-6:使用IPv6;

-h:显示指令帮助信息。

 

主机:指定要查询域名主机;

查询类型:指定DNS查询的类型;

查询类:指定查询DNS的class;

查询选项:指定查询选项。

 

3、常用方法

 

查询域名信息

$ dig www.landui.com

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.16 <<>> www.landui.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42024

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:

;www.landui.com                        IN      A

;; ANSWER SECTION:

www.landui.com         10      IN      A       43.228.78.146

;; Query time: 0 msec

;; SERVER: 100.100.2.136#53(100.100.2.136)

;; WHEN: Tue Dec 10 14:19:53 CST 2024

;; MSG SIZE  rcvd: 48

 

dig 命令默认的输出信息可以分为 5 个部分。

第一部分显示 dig 命令的版本和输入的参数。

第二部分显示服务返回的一些技术详情,比较重要的是 status。如果 status 的值为 NOERROR 则说明本次查询成功结束。

第三部分中的 "QUESTION SECTION" 显示我们要查询的域名。

第四部分的 "ANSWER SECTION" 是查询到的结果。

第五部分则是本次查询的一些统计信息,比如用了多长时间,查询了哪个 DNS 服务器,在什么时间进行的查询等等。

 

查询 CName 记录

$ dig qq.com CNAME

 

从指定的 DNS 服务器上查询

$ dig qq.com CNAME @8.8.8.8

 

如果不指定 DNS 服务器,dig 会依次使用 /etc/resolv.conf 里的地址作为 DNS 服务器:

 

控制显示结果

$ dig +short qq.com

 

跟踪整个查询过程

$ dig +trace qq.com

 

查询域的 MX 记录

$ dig qq.com MX

 

查询域的 TTL 记录

$ dig qq.com TTL

 

仅查询答案部分

$ dig qq.com +nocomments +noquestion +noauthority +noadditional +nostats

 

反向查询

$ dig -x 8.8.8.8 +short

 

蓝队云官网上拥有完善的技术支持库可供参考,大家可自行查阅,更多技术问题,可以直接咨询。同时,蓝队云整理了运维必备的工具包免费分享给大家使用,需要的朋友可以直接咨询。

更多技术知识,蓝队云期待与你一起探索。

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: