首页 > 其他分享 >dig 简明教程

dig 简明教程

时间:2023-10-18 19:23:22浏览次数:38  
标签:baidu 教程 dig 简明 www 域名 DNS com

哈喽大家好,我是咸鱼

不知道大家在日常学习或者工作当中用 dig 命令多不多

dig 是 Domain Information Groper 的缩写,对于网络管理员和在域名系统(DNS)领域工作的小伙伴来说,它是一个非常常见且有用的工具。

无论是简单的 DNS 解析查找还是更高级的故障排除和分析,dig 都能够胜任

那么今天咸鱼将和大家一起了解一下 dig 命令的一些常见用法以及示例

除了 dig 命令,还有一种跟 dig 功能是差不多的 命令 nslookup

安装

如果 Linux 发行版没有安装 dig 命令,则可以通过下面的命令来安装

  • Debian 和 基于 Debian 的发行版
apt install dnsutils
  • Red Hat 和基于 RHEL 的发行版
dnf install bind-utils
# 或
yum install bind-utils
  • Arch Linux 和基于 Arch 的发行版
pacman -S dnsutils

以我的测试环境为例(CentOS 7.9)
image

常见用法

# 基本语法
dig [@server] [name] [type]
  • @server:请求所指向的 DNS 服务器的主机名或IP地址。如果没有指定 DNS 服务器,则使用系统当前配置的 DNS 服务器
  • name :要查找的域名
  • type :要检索的 DNS 记录的类型,默认为 A 记录类型

比如说我想解析 www.baidu.com 这个域名,指定使用 Google 的 dns 服务器(8.8.8.8)
image

# A 记录
dig @8.8.8.8 www.baidu.com

如果要查找 MX 记录

dig @8.8.8.8 www.baidu.com MX

前面我们讲到,dig 命令会在 ANSWER 部分中默认显示 A 记录,下面我们来看下命令输出的信息
image
可以看到一共有五列,我们以最后一行行为例:

  • 第一列 www.wshifen.com:要查找的域名
  • 第二列 192 :生存周期,告诉 DNS 解析器在请求一个新查询之前缓存查询多长时间
  • 第三列 IN:查询的类,IN 指互联网
  • 第四列 A:DNS 查询类型( A, AAAA, CNAME, MX, NS, PTR, CERT, SRV, TXT, SOA 等)
  • 第五列 104.193.88.77:域名关联的 IP 地址

由前面的输出信息我们可以看到,内容还是挺多的,这时候有小伙伴会想:如何减少 dig 命令输出的内容呢?我只想要最有用的,其他的我看得头昏眼花

可以加上 +nocomments 选项

dig @8.8.8.8 www.baidu.com +nocomments

image
可以看到,加上 +nocomments 选项后返回的内容有一部分注释是被去掉了的

这时候有的小伙伴还会说:不行不行,信息还是太多了,我只要 ANSWER 部分。该如何让命令只输出 ANSWER 部分呢?

dig www.baidu.com +noall +answer

image
可以看到,加了 +noall +answer 选项之后,会显示出干净且易于阅读的内容

如果我只想要返回解析出来的结果呢?可以使用 +short 选项

dig www.baidu.com +short

image

进阶用法

  • 指定返回类型信息

前面我们提到过,DNS 记录的类型(type)有很多种,例如 A, AAAA, CNAME, MX, NS, PTR, CERT, SRV, TXT, SOA 等

我们可以在命令的末尾加上对应的类型名以此来返回解析后特定类型信息

# 返回 MX 类型
dig www.baidu.com MX

# 返回 CNAME 类型
dig www.baidu.com CNAME

或者使用特殊关键字 ALL 将所有类型记录放在一起

# 将会返回所有类型信息
dig www.baidu.com ALL
  • 查看 DNS 解析过程

如果我们不确定 DNS 配置在哪里有问题,我们可以使用 dig 命令来查看 DNS 解析的每一过程,只需要加上 +trace 选项即可

dig www.baidu.com +trace

image

  • DNS 反向查找

DNS 正向查找就是通过域名找解析 IP;反向查找就是通过 IP 地址找域名

# 查找 ip 95.217.163.246 对应的域名
dig -x 95.217.163.246

image

  • 批量查询

有小伙伴会想:我每次查询一个域名效率太慢了,我能不能一次查询多个域名呢?

是可以的,dig 是支持批量查询的

首先我们把要查询的域名放在一个文件里面,每行一个

[root@localhost ~]# cat domains.txt 
www.baidu.com
archlinux.org

然后执行 dig 命令的时候加上 -f 选项

# 加上 +short 简化输出内容
dig -f domains.txt +short

image

修改 dig 默认选项

前面我们在使用 dig 命令的时候,为了简化输出信息每次敲命令都得带上+nocomments 选项

那我们能不能把这个选项设置成默认值,这样在敲命令的时候就不需要额外加上这个选项了

答案是可以的,我们需要在家目录下创建一个 ~/.digrc 文件,然后添加选项

[root@localhost ~]# cat ~/.digrc 
+nocomments
+short

这样我们执行 dig 命令的时候就算没加上去,也会默认使用这两个选项

标签:baidu,教程,dig,简明,www,域名,DNS,com
From: https://www.cnblogs.com/edisonfish/p/17773138.html

相关文章

  • 无涯教程-Arduino - 简介
    Arduino是基于易于使用的硬件和软件的开源平台。它由一块可进行编程的电路板(称为微控制器)和一个称为ArduinoIDE(集成开发环境)的现成软件组成,该软件用于将计算机代码编写并上传到物理板上。关键特征是-Arduino板能够读取来自不同传感器的模拟或数字输入信号,并将其转换为输......
  • 2023跟我一起成为docker大牛:swarm 教程:部署篇「上」
    2023跟我一起成为docker大牛:swarm教程:部署篇「上」Swarm模式是用于管理一组Docker守护程序的高级功能。ip规划:Manager:Manager:172.16.95.137Node1:172.16.95.138Node2:172.16.95.1391、manager节点初始化swarmdockerswarminit--advertise-addr172.16.95.137输出:docker......
  • 苹果CMS搭建教程
    苹果CMS搭建教程市面上一般个人搭建的影视网站,大多都是采用现成的CMS系统来搭建的,如:苹果CMS、YYCMS、海洋CMS、飞飞CMS、马克斯CMS等一般用的多的是前两个。这些CMS大多都可以搜到最新的安装包,下载最新版本就行了,因为软件肯定要定时更新和维护的。小白入门建议先安装宝塔面板,......
  • 软件测试全套教程,软件测试自学线路图
    ​ 一、简介本文从一个简单的登录接口测试入手,一步步调整优化接口调用姿势,然后简单讨论了一下接口测试框架的要点,最后介绍了一下我们目前正在使用的接口测试框架pithy。期望读者可以通过本文对接口自动化测试有一个大致的了解。二、引言为什么要做接口自动化测试?在当前......
  • 新手教程系列:群晖QuickConnect:最简单的群晖外网访问NAS工具
    通过群晖Synology免费提供的QuickConnect服务,您可在外部网络轻松连接到群晖SynologyNAS,而无需设置端口转发规则或其它复杂的网络设置。QuickConnect可让您通过一个简单的可自定义地址(如 quickconnect.to/example)进行连接。这是一个简单易用,快捷部署的外网访问方式,适合群晖......
  • 新手教程系列:如何在Windows电脑上访问Synology群晖NAS
    Synology群晖NAS经过专门设计,可快速简单地在本地网络中存储和共享文件,让您直接访问Synology群晖NAS上的文件而没有每次登录DSM的麻烦。例如,您可用Windows资源管理器将文件保存到Synology群晖NAS,如同使用其它网络设备一样。1、打开Windows资源管理器窗口并进入计算......
  • 新手教程系列:如何在MAC电脑上访问Synology群晖NAS
    SynologyNAS经过专门设计,可快速简单地在本地网络中存储和共享文件,让您直接访问SynologyNAS上的文件而没有每次登录DSM的麻烦。例如,您可用Finder将文件保存到SynologyNAS,如同使用其它网络设备一样。1、打开Mac计算机上的Finder。2、沿屏幕顶部找到菜单栏。3、单击......
  • 新手教程系列:如何还原群晖 Synology NAS 意外删除或丢失的文件?
    有多种工具可恢复从群晖SynologyNAS意外删除的数据。首先建议为每个共享文件夹启用回收站选项。还有其他备份解决方案或第三方软件可用于替代回收站或与回收站结合使用。本文将指导您完成在群晖DSM上启用回收站,并向您介绍一些备选选项,以帮助您恢复已删除的文件。使用回收站......
  • Cerebro安装 Docker 教程
    简介在本教程中,我将向你展示如何在你的机器上安装Cerebro,并使用Docker运行。Cerebro是一个基于Elasticsearch的Web管理界面,它提供了一个直观的界面来管理和监控Elasticsearch集群。步骤详解步骤1:安装DockerDocker是一个开源的容器化平台,我们首先需要安装Docker......
  • 无涯教程-NumPy - decode()函数
    此函数调用numpy.char.decode()解码给定的字符串。importnumpyasnpa=np.char.encode('hello','cp500')printaprintnp.char.decode(a,'cp500')其输出如下-�����hello参考链接https://www.learnfk.com/numpy/numpy-char-decode.html......