dig命令查询结果解析(本文是转发)

2024-03-07 09:40

本文主要是介绍dig命令查询结果解析(本文是转发),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文链接:https://blog.csdn.net/smile_YangYue/article/details/105074197


1.DNS是什么

DNS (Domain Name System 的缩写)的作用简单而言,就是根据域名查出IP地址。

2.通过dig展示DNS根据域名查出IP地址的过程

dig www.baidu.com

查询结果可以分成6段

第1段 查询统计

dig程序的版本号(9.10.6)和要查询的域名
全局的设置选项

获取查询结果统计如下:

opcode 操作码,QUERY,代表是查询操作

status 状态,NOERROR,代表没有错误

id 编号,54864,16bit数字

flags 标志,如果出现就表示有标志,如果不出现就未设置标志:

  qr query,查询标志,代表是查询操作

  rd recursion desired, 代表希望进行递归(recursive)查询操作

  ra recursive available 在返回中设置,代表查询的服务器支持递归(recursive)查询操作。

  aa Authoritative Answer 权威回复,如果查询结果由管理域名的域名服务器而不是缓存服务器提供的,则称为权威回复。

QUERY 查询数,1代表1个查询,对应下面的QUESTION SECTION中的记录数

ANSWER 结果数,4代表有4项结果,对应下面ANSWER SECTION中的记录数

AUTHORITY 权威域名服务器记录数,0代表该域名有0个权威域名服务器,可供域名解析用。

ADDITIONAL 格外记录数,0代表有0项格外记录。

第2段 查询内容

要查询的域名,这里是baidu.com.,'.'代表根域名,com顶级域名,baidu二级域名,www三级域名;www.baidu.com.后面多了个点,表示根域名,根域名.root对于所有域名都是一样的,所以平时是省略的。

class,要查询信息的类别,IN代表类别为IP协议,即Internet

type,要查询的记录类型,A记录(Address),返回域名指向的IP地址,代表要查询ipv4地址。AAAA记录,代表要查询ipv6地址

第3段 查询结果

DNS服务器的给的最终查询结果,即www.baidu.com的A记录(2个IP地址)

CNAME 规范名称记录(Canonical Name),返回另一个域名,即当前查询的域名是另一个域名的跳转,为服务器配置提供灵活性,用户感知不到。

此处,www.baidu.com的CNAME记录指向www.a.shifen.com。也就是说,用户查询www.baidu.com的时候,实际上返回的是www.a.shifen.com的IP地址。

这样的好处是,变更服务器IP地址的时候,只要修改www.a.shifen.com这个域名就可以了,用户的www.baidu.com域名不用修改。

所以www.baidu.com IP地址也就是182.61.200.7/182.61.200.7

其中300是TTL值(Time to live 的缩写),表示缓存时间,即600秒之内不用重新查询

第4段 a.shifen.com.的NS记录

NS(Name Server的缩写),即域名服务器记录,返回保存下一级域名信息的服务器地址。该记录只能设置为域名,不能设置为IP地址。

共5个域名服务器,向其中任一台查询就能知道www.a.shifen.com的IP地址是什么

第5段 上面NS域名服务器的IP地址

第6段 本机的DNS服务器查询信息

本机的DNS服务器是192.168.0.1,查询端口是53(DNS服务器的默认端口),以及回应长度是260字节,还有查询耗时,查询时间信息

3.dig结合其他参数查询


dig +short返回简化结果

dig +short www.baidu.com

直接返回www.baidu.com IP查询结果

dig +trace显示DNS的整个分级查询过程

dig +trace www.baidu.com

dig -x用于从IP地址反查域名

dig -x 192.30.252.153


————————————————
版权声明:本文为CSDN博主「_仰望月空」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/smile_YangYue/article/details/105074197

这篇关于dig命令查询结果解析(本文是转发)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/783089

相关文章

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

在C#中合并和解析相对路径方式

《在C#中合并和解析相对路径方式》Path类提供了几个用于操作文件路径的静态方法,其中包括Combine方法和GetFullPath方法,Combine方法将两个路径合并在一起,但不会解析包含相对元素... 目录C#合并和解析相对路径System.IO.Path类幸运的是总结C#合并和解析相对路径对于 C

Java解析JSON的六种方案

《Java解析JSON的六种方案》这篇文章介绍了6种JSON解析方案,包括Jackson、Gson、FastJSON、JsonPath、、手动解析,分别阐述了它们的功能特点、代码示例、高级功能、优缺点... 目录前言1. 使用 Jackson:业界标配功能特点代码示例高级功能优缺点2. 使用 Gson:轻量

Java如何接收并解析HL7协议数据

《Java如何接收并解析HL7协议数据》文章主要介绍了HL7协议及其在医疗行业中的应用,详细描述了如何配置环境、接收和解析数据,以及与前端进行交互的实现方法,文章还分享了使用7Edit工具进行调试的经... 目录一、前言二、正文1、环境配置2、数据接收:HL7Monitor3、数据解析:HL7Busines

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不

Redis KEYS查询大批量数据替代方案

《RedisKEYS查询大批量数据替代方案》在使用Redis时,KEYS命令虽然简单直接,但其全表扫描的特性在处理大规模数据时会导致性能问题,甚至可能阻塞Redis服务,本文将介绍SCAN命令、有序... 目录前言KEYS命令问题背景替代方案1.使用 SCAN 命令2. 使用有序集合(Sorted Set)

MyBatis框架实现一个简单的数据查询操作

《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的... 基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核

PHP执行php.exe -v命令报错的解决方案

《PHP执行php.exe-v命令报错的解决方案》:本文主要介绍PHP执行php.exe-v命令报错的解决方案,文中通过图文讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录执行phpandroid.exe -v命令报错解决方案执行php.exe -v命令报错-PHP War

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript