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

相关文章

Redis 的 SUBSCRIBE命令详解

《Redis的SUBSCRIBE命令详解》Redis的SUBSCRIBE命令用于订阅一个或多个频道,以便接收发送到这些频道的消息,本文给大家介绍Redis的SUBSCRIBE命令,感兴趣的朋友跟随... 目录基本语法工作原理示例消息格式相关命令python 示例Redis 的 SUBSCRIBE 命令用于订

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

Java MCP 的鉴权深度解析

《JavaMCP的鉴权深度解析》文章介绍JavaMCP鉴权的实现方式,指出客户端可通过queryString、header或env传递鉴权信息,服务器端支持工具单独鉴权、过滤器集中鉴权及启动时鉴权... 目录一、MCP Client 侧(负责传递,比较简单)(1)常见的 mcpServers json 配置

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Maven中生命周期深度解析与实战指南

《Maven中生命周期深度解析与实战指南》这篇文章主要为大家详细介绍了Maven生命周期实战指南,包含核心概念、阶段详解、SpringBoot特化场景及企业级实践建议,希望对大家有一定的帮助... 目录一、Maven 生命周期哲学二、default生命周期核心阶段详解(高频使用)三、clean生命周期核心阶

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象