`

DNS协议头

 
阅读更多
一.首部:
ID:由程序分配的16位标识符,该程序产生任何种类的查询。这个标识符是被复制的相应响应,这个标识符可由请求者用于匹配未得到解决的查询的响应。

QR:1位字段,该字段规定这个消息是查询(0)还是响应(1)。

OPCODE:4 位字段,该字段规定这个消息中查询的种类。这个值由查询的发起者设置,它被复制进响应中。这个值的具体取值是:
0:标准查询(QUERY)
1:反向查询(IQUERY)
2:服务器状态请求(STATUS)
3-15:保留将来使用

AA:权威回答(Authoritative Answer) ---这个位在响应中有效,这个位规定进行回应的名称服务器是问题部分中域名的权威(名称服务器)。
注意,由于别名,回答部分的内容可以有多个所有者名称。AA位对应匹配查询名称的名称,或者
对应回答部分中第一个所有者

TC:截断(Truncation) ---表示这条消息由于长度大于传送通道上准许的长度而被截断。

RD:期望递归(Recursion Desired) ---在查询中这个位可以置 1,并且被复制进响应中。如果
RD 置 1,它引导名称服务器递归跟踪查询。支持递归查询是可选项。

RA:递归可用(Recursion Available) ---在响应中这个字段被置 1 或被清零,指示在名称服务
器中是否支持递归查询。

Z:保留将来使用。在所有查询和响应中此位必须置 0。

RCODE:响应代码(Response code)---这个 4 位字段是响应的一部分。其取值有如下含意:
0 没有出错条件
1 格式错误---名称服务器不能解释查询。
2 服务器故障---由于与名称服务器有关的问题,名称服务器不能处理这个查询。
3 名称错误---仅对来自权威名称服务器的响应有意义,这个代码预示在该查询中被查询的域名
  不存在。
4 未实现---名称服务器不支持请求的查询种类。
5 拒绝---由于策略原因名称服务器拒绝执行指定的操作。例如,名称服务器可能不希望提供信
  息给特定的请求者,或者名称服务器可能不希望为特定的数据执行特定的操作(例如,区域传
  递)。
6-15 保留将来使用。

QDCOUNT:无正负号 16 位整数,它规定问题部分中条目的数量。

ANCOUNT:无正负号 16 位整数,它规定回答部分中资源记录的数量。

NSCOUNT:无正负号 16 位整数,它规定权威记录部分中名称服务器资源记录的数量。

ARCOUNT:无正负号 16 位整数,它规定附加记录部分中资源记录的数量。

二.问题部分格式
QNAME:用标签序列表示的域名,在标签序列中每个标签包括长度八位位组,再加上那个八位位组的数量。对于根的空标签,此域名用零长度八位位组终止。注意,这个字段可以是奇数个八位位组;不使用填充。

QTYPE:2个八位位组代码,它规定查询的类型。这个字段的值包括所有适用于 TYPE 字段的代码,以及某些更一般的代码(这QCLASS些代码可以匹配不止一个 RR 类型)。

QCLASS:2 个八位位组代码,它规定查询的类。例如,对于互联网,QCLASS 字段是 IN。

三.资源记录格式
回答部分、权威部分和附加部分都共享相同的格式:可变数目资源记录,其中记录的数
目在首部内相应计数字段中规定
NAME:这个资源记录匹配的域名。

TYPE:包括RR类型代码之一的两个八位位组。这个字段规定RDATA字段中数据的含意。

CLASS:两个八位位组,它们规定 RDATA 字段中数据的类。

TTL:32位无正负号整数,它规定时间间隔(单位为秒),即资源记录应当被抛弃前,它可以被缓存的时间。零值的含意是 RR 仅能用于正在进行的业务,不能被缓存。

RDLENGTH:无正负号 16 位整数,它规定 RDATA 字段的长度,以八位位组为单位。

RDATA:可变长度八位位组串,它描述资源。这条信息的格式根据资源记录的 TYPE 和 CALSS 改变。
例如,如果 TYPE 是 A 和 CALSS是 IN,此 RDATA 字段是 4 个八位位组 ARPA 互联网地址。












     
 


分享到:
评论

相关推荐

    DNS协议分析实验报告

    **DNS协议分析实验报告** **一、实验目的** 本次DNS协议分析实验的主要目的是熟悉`nslookup`命令的使用,以及深入了解DNS(域名系统)的工作原理。通过解析域名www.hunau.net并分析其对应的IP地址解析请求和应答...

    DNS协议分析和HTTP协议分析的实验报告.pdf

    ### DNS协议分析 #### 实验目的 本实验旨在让学生通过实践操作深入了解DNS(Domain Name System)的工作原理及其报文格式。通过使用`nslookup`工具和Wireshark协议分析软件,学习如何解析域名、捕获并分析DNS数据包...

    DNS 域名服务协议

    在实验环境中,为了加深对DNS协议工作原理和报文格式的理解,通常会进行DNS协议的实验操作。实验过程包括理解DNS实现的原理、了解DNS解析的过程、学习DNS报文格式、掌握nslookup命令和ipconfig命令的使用方法等。...

    C#的DNS协议完整实现代码【有默认DNS服务器实现哦~】

    本篇文章将深入探讨如何在C#中实现DNS协议,并涵盖服务器、客户端、协议报文格式以及DNS代理服务器的相关知识。 首先,DNS服务器是DNS系统的核心,它存储了域名到IP地址的映射。在C#中实现一个简单的DNS服务器,...

    DNS协议解析源码程序

    在本项目中,“DNS协议解析源码程序”旨在实现DNS查询和响应的解析功能,这涉及到对DNS报文结构的理解以及C#编程语言的应用。 首先,我们来看DNS协议的基本概念。DNS协议基于UDP(User Datagram Protocol)或TCP...

    dns协议包,协议分析,网络分析

    dns网络协议报文,用来分析dns协议 dns网络协议报文,用来分析dns协议dns网络协议报文,用来分析dns协议dns网络协议报文,用来分析dns协议dns网络协议报文,用来分析dns协议

    实验报告5 DNS协议分析

    实验报告5:DNS协议分析 本实验旨在深入理解DNS(Domain Name System)的工作原理,并通过使用nslookup命令来熟悉DNS查询的过程。实验中,我们分析了三个特定的nslookup命令产生的DNS数据报,以了解域名解析请求和...

    DNS协议抓包分析

    首先,DNS协议基于UDP(User Datagram Protocol)进行通信,但也有使用TCP的情况。在DNS查询过程中,客户端向DNS服务器发送请求,包含要解析的域名和查询类型(如A记录、AAAA记录、MX记录等)。服务器收到请求后,会...

    dns协议规范.zip

    DNS协议规范主要由两份RFC(Request for Comments)文档定义:RFC1034和RFC1035。这些文档详细描述了DNS的工作原理、数据结构、查询和响应过程以及资源记录的格式。 RFC1034,标题为“域名系统(DNS)的概念和机制...

    DNS协议分析报告

    ### DNS协议分析报告 #### 实验目的与背景 本次实验旨在深入理解DNS(Domain Name System,域名系统)的工作原理,并通过Wireshark抓包工具捕捉并分析DNS数据包,掌握DNS解析过程中的关键技术和实现机制。 #### ...

    C# Socket 实现DNS协议完整代码

    本篇文章将详细讲解如何使用C#的Socket编程来实现DNS协议,通过源码分析,帮助你深入理解DNS的工作机制。 首先,DNS协议是一种基于UDP的应用层协议,其主要功能是将易于记忆的域名解析为IP地址,以便于网络通信。在...

    dns协议解析包 v1.0源码

    dns协议解析包 v1.0源码 介绍: 一个c#开发的dns协议解析包。可以生成查询请求,接收返回的数据,并解析出结果。 应用场景: 如果只是想根据域名获取ip地址,可以使用.net自带的类“System.Net.Dns.GetHostByName...

    dns协议简介ppt

    在这个“dns协议简介ppt”中,我们深入理解DNS的工作原理、历史演变以及其在现代网络中的应用。 首先,DNS协议解决了网络通讯中的一个重要问题:人与机器之间的沟通鸿沟。当我们输入像"www.google.com"这样的域名时...

    dns协议简介

    这篇教程将深入解析DNS协议的基本原理、工作流程以及其在互联网中的重要作用。 首先,我们要理解DNS的主要功能:将人类友好的域名转换为网络可以识别的IP地址。例如,当你在浏览器中输入www.google.com时,DNS系统...

    DNS协议浅谈

    ### DNS协议浅谈 #### 一、DNS的工作原理 **DNS**(Domain Name System,域名系统)是互联网中的一项核心服务,它通过将人类易于记忆的域名转化为机器可识别的IP地址,使得用户能够轻松访问互联网上的各种资源。...

    JAVA编写的DNS协议源码

    当年在很多开源社区找到类似的JAR,都特别的肥大,效率低下,因此就自己根据DNS协议自行编写了一个,编写成JAR包只有38K,非常轻量,运行效率杀掉所有开源社区的产品,代码也附上了,大家有需要研究的可以研究,不想...

    DNS相关知识详解 DNS协议

    了解DNS协议对于网络管理和故障排查至关重要。 **一、DNS协议原理** DNS协议基于UDP(User Datagram Protocol)和TCP(Transmission Control Protocol)两种传输层协议。通常,DNS查询主要通过UDP进行,因为其速度...

    DNS协议格式文档 DNS-primer.pdf

    DNS 协议格式文档 DNS 协议是一种层次化的客户端-服务器协议,每个域名(如 neu.edu、microsoft.com 等)都有一个或多个 DNS 服务器,负责处理该域名下的子域名(如 www.neu.edu、research.microsoft.com 等)的...

Global site tag (gtag.js) - Google Analytics