Dig 是一个常用的命令行工具,网络管理员经常用它来查询域名系统(DNS)。对于工作在 AlmaLinux 8 或 Rocky Linux 环境下的运维人员来说,掌握它的安装与基本用法是必备技能。
什么是 dig(域名信息探测器)?
dig(Domain Information Groper,域名信息探测器)是一个用来向 DNS 服务器查询信息的命令行工具。DNS(域名系统)是一个全球分布的数据库,负责在 IP 地址和域名之间进行转换。作为 BIND(Berkeley Internet Name Domain Server)软件套件的客户端程序,dig 支持 IPv4 和 IPv6,主要被用于分析和排查 DNS 服务器的问题。
如何在 AlmaLinux 8 或 Rocky Linux 上安装 dig
第 1 步:更新系统软件包
首先,打开终端,运行系统更新命令来确保软件包列表和系统组件是最新的。
sudo dnf update
第 2 步:安装 bind-utils 软件包
dig 工具包含在 bind-utils 软件包中,而该软件包通常已包含在系统标准仓库里,无需添加第三方源。执行以下命令进行安装:
sudo dnf install bind-utils
安装过程通常很快,如果你的系统已经安装过,命令会提示无需任何处理。

第 3 步:验证安装
安装完成后,可以通过查看版本来确认 dig 是否已正确安装。
dig -v
dig 命令的基本语法与使用
dig 命令的一般语法结构如下:
dig [@server] [domain] [type] [-x ip-address]
- server:指定要查询的 DNS 服务器的域名或 IP 地址。如果不指定,则使用系统默认配置的 DNS 服务器。
- domain:要查询的域名。
- type:要查询的 DNS 记录类型(如 A、MX、NS 等)。如果省略,默认查询 A 记录。
接下来,我们通过几个常见示例,来看看如何使用 dig 命令进行 DNS 查询。
查询域名的 A 记录(IP地址)
最基本的用法是查询一个域名的 A 记录,这将返回该域名对应的 IPv4 地址。
dig baidu.com
这条命令会输出详细的查询结果,包括问题段、回答段(包含多个IP地址)、查询时间等丰富信息。

仅获取简短的 IP 地址列表
如果你只关心结果,不需要那些详细的头信息,可以使用 +short 选项。
dig baidu.com +short
这个选项会过滤掉所有不必要的信息,直接列出相关的 IP 地址或记录值,这在编写脚本或需要快速获取信息时非常有用。
查询特定类型的 DNS 记录
除了 A 记录,dig 可以查询几乎所有类型的 DNS 记录。只需要在域名后指定记录类型即可。
- 查询邮件交换记录(MX):
dig baidu.com MX
- 查询别名记录(CNAME):
dig baidu.com CNAME
- 查询 IPv6 地址记录(AAAA):
dig baidu.com AAAA
常见的 DNS 记录类型速查表
为了方便大家使用,下表列出了一些 dig 命令中常用的资源记录类型:
| 资源记录/类型 |
描述 |
ANY |
查询所有类型的记录 |
A |
主机的 IPv4 地址记录 |
AAAA |
主机的 IPv6 地址记录 |
CNAME |
规范名称,即别名记录 |
MX |
邮件交换器记录 |
NS |
授权名称服务器的主机名 |
PTR |
域名指针记录(用于 IP 反查域名) |
SOA |
权威起始记录,包含域区的主要信息 |
SRV |
服务定位记录 |
TXT |
文本记录,常用于验证或策略声明 |
获取帮助信息
dig 命令的功能非常丰富,支持大量查询选项和显示控制选项。要查看完整的帮助信息,可以使用 -help 参数。
dig -help
执行后会显示详细的使用方法、参数说明以及各种 +[no]keyword 格式的选项,这些选项能让你精细控制查询行为和输出格式,是进行高级 运维 和故障排查时的利器。

总的来说,在 AlmaLinux 8 或 Rocky Linux 上安装和使用 dig 工具非常简单。无论是日常检查域名解析,还是深入排查复杂的网络问题,它都是一个可靠且功能强大的伙伴。希望这篇指南能帮助你快速上手。如果你在实践过程中有其他心得或疑问,欢迎到 云栈社区 与大家交流探讨。