文档详情

DNS抓包分析详细教程.doc

发布:2025-05-24约4.5千字共11页下载文档
文本预览下载声明

对DNS域名系统的抓包分析

目录

TOC\o1-3\h\u27864一、实验目的 3

二、相关原理3

254922.1DNS的定义 3

72592.2DNS的构成 3

275842.3DNS的查询 3

241462.4DNS的报文格式 4

14989三、结合具体抓包实例进行的分析 5

182973.1协议数据包窗口 5

172923.2协议树窗口 5

40333.3物理层节点 6

120343.4数据链路层节点 7

138353.5IP节点 7

248933.6UDP节点 8

47873.7DNS节点 9

187843.7.1DNS请求报文 9

224313.7.2DNS应答报文 10

7103四、体会与小结 11

一、实验目的

通过网络抓包试验,深刻理解TCP/IP协议簇中DNS域名系统的使用方式与报文具体格式与含义,加强对DNS的理解与应用。

二、相关原理

2.1DNS的定义

DNS是域名系统(DomainNameSystem)的缩写,它是由解析器和域名效劳器组成的。域名效劳器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的效劳器。其中域名必须对应一个IP地址,而IP地址不一定有域名。域名系统采用类似目录树的等级结构。域名效劳器为客户机/效劳器模式中的效劳器方,它主要有两种形式:主效劳器和转发效劳器。将域名映射为IP地址的过程就称为“域名解析”。在Internet上域名与IP地址之间是一对一〔或者多对一〕的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析效劳器来完成,DNS就是进行域名解析的效劳器。DNS命名用于Internet等TCP/IP网络中,通过用户友好的名称查找计算机和效劳。当用户在应用程序中输入DNS名称时,DNS效劳可以将此名称解析为与之相关的其他信息,如IP地址。因为,你在上网时输入的网址,是通过域名解析系统解析找到了相对应的IP地址,这样才能上网。其实,域名的最终指向是IP。

2.2DNS的构成

在IPV4中IP是由32位二进制数组成的,将这32位二进制数分成4组每组8个二进制数,将这8个二进制数转化成十进制数,就是我们看到的IP地址,其范围是在0~255之间。因为,8个二进制数转化为十进制数的最大范围就是0~255。现在已开始试运行、将来必将代替IPv4的IPV6中,将以128位二进制数表示一个IP地址。

2.3DNS的查询

DNS查询可以有两种解释,一种是指客户端查询指定DNS效劳器上的资源记录〔如A记录〕,另一种是指查询FQDN名的解析过程。

一、查询DNS效劳器上的资源记录

您可以在Windows平台下,使用命令行工具,输入nslookup,返回的结果包括域名对应的IP地址〔A记录〕、别名〔CNAME记录〕等。除了以上方法外,还可以通过一些DNS查询站点如国外的国内的查询域名的DNS信息。

二、FQDN名的解析过程查询

假设想跟踪一个FQDN名的解析过程,在LinuxShell下输入digwww+trace,返回的结果包括从跟域开始的递归或迭代过程,一直到权威域名效劳器。

2.4DNS的报文格式

DNS报文的首部:

DNS报文首部的后面是可变局部,包括四个小局部。

问题局部由一组问题记录组成。

DNS报文的其余三个局部是答复局部、授权局部和附加信息局部,附加信息包含答复局部和授权局部返回的资源所要求的附加信息〔如IP地址〕。这三局部均由一组资源记录组成,而且仅在应答报文中出现。一条资源记录描述一个域名。

三、结合具体抓包实例进行的分析

3.1协议数据包窗口

从包到达的时间,顺序以及源和目的IP地址可知,这是一对DNS请求与应答报文。下列图为1号包与2号包中DNS段的报文分析注释,由此可证明,包1为DNS请求报文,包2为包1的应答报文,请求与应答报文的到达间隔时间为0.000349s,它们的标识字段都为0x001,用于相互匹配。

因为DNS请求报文的目的是请求DNSServer的IP地址,故包1的源IP地址为本机IP,目的IP地址为DNS效劳器的IP,包2与包1相反。

3.2协议树窗口

DNS请求报文:

DNS应答报文:

可以看出,DNS请求报文与应答报文链路层的MAC地址相反,请求报文中的源物理地址为本机的物理地址,这与IP地址相对应。此外,DNS请求报文与应答报文传输层中UDP的源端口与目的端口相反,其中请求报文UDP的源端口为客户机动态申请的本地端口,目的端口为DNS所固有的53号周知端口。这两点都表达了DN

显示全部
相似文档