协议分析(第12讲)_第1页
协议分析(第12讲)_第2页
协议分析(第12讲)_第3页
协议分析(第12讲)_第4页
协议分析(第12讲)_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、TCP/IP协议分析(第十二讲)主讲:1第九章 DNS协议分析29.1 DNS协议概述域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换及有关电子邮件的选路信息。RFC 1034 Mockapetris 1987a 说明了DNS的概念和功能,RFC 1035 Mockapetris 1987b详细说明了DNS 的规范和实现。与其相关的还有RFC 1921和RFC 2136。1、DNS域名结构因特网采用了层次树状结构的命名方法。任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名。域名的结构由标号序列组成,各标号之间用点隔开:

2、 . 三级域名 . 二级域名 . 顶级域名各标号分别代表不同级别的域名。 2、域名的解析过程 主机向本地域名服务器的查询一般都是采用递归查询。如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址,那么本地域名服务器就以 DNS 客户的身份,向其他根域名服务器继续发出查询请求报文。本地域名服务器向根域名服务器的查询通常是采用迭代查询。当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的 IP 地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询。本地域名服务器采用迭代查询 顶级域名服务器权限域名服务本地域名服务器

3、根域名服务器迭代查询 的 IP 地址 递归查询需要查找 的 IP 地址本地域名服务器采用递归查询(比较少用) 顶级域名服务器权限域名服务本地域名服务器 根域名服务器递归查询递归查询 的 IP 地址 需要查找 的 IP 地址9.2 DNS报文结构9标识字段由客户程序设置并由服务器返回结果。客户程序通过它来确定响应与查询是否匹配。1016 bit的标志字段被划分为若干子字段。11 QR 是1 bit字段:0表示查询报文,1表示响应报文。 opcode是一个4 bit字段:通常值为0(标准查询),其他值为1(反向查询)和2(服务器状态请求)。 AA是1 bit标志,表示“授权回答(authorita

4、tive answer)”。该名字服务器是授权于该域的。 TC是1 bit字段,表示“可截断的( t r u n c a t e d )”。使用U D P时,它表示当应答的总长度超过5 1 2字节时,只返回前5 1 2个字节。 RD是1 bit字段表示“期望递归( recursion desired)”。该比特能在一个查询中设置,并在响应中返回。这个标志告诉名字服务器必须处理这个查询,也称为一个递归查询。如果该位为0,且被请求的名字服务器没有一个授权回答,它就返回一个能解答该查询的其他名字服务器列表,这称为迭代查询。 RA是1 bit字段,表示“可用递归”。如果名字服务器支持递归查询,则在响应

5、中将该比特设置为1。在后面的例子中可看到大多数名字服务器都提供递归查询,除了某些根服务器。12 随后的3 bit字段必须为0。 rcode是一个4 bit的返回码字段。通常的值为0(没有差错)和3(名字差错)。名字差错只有从一个授权名字服务器上返回,它表示在查询中制定的域名不存在。13随后的4个16 bit 字段说明最后4个变长字段中包含的条目数。对于查询报文,问题(question)数通常是1,而其他3项则均为0。类似地,对于应答报文,回答数至少是1,剩下的两项可以是0或非0。149.2.1 DNS查询报文中的问题部分查询名是要查找的名字,它是一个或多个标识符的序列。每个标识符以首字节的计数

6、值来说明随后标识符的字节长度,每个名字以最后字节为0结束,长度为0的标识符是根标识符。计数字节的值必须是063的数,因为标识符的最大长度仅为63。9.2.1 DNS查询报文中的问题部分每个问题有一个查询类型,而每个响应(也称一个资源记录)也有一个类型。9.2.1 DNS查询报文中的问题部分查询类:通常值为1,表示是互联网的地址,也就是IP协议族的地址。9.2.2 DNS响应报文中的资源记录部分域名是记录中资源数据对应的名字。它的格式和前面介绍的查询名字段格式相同。9.2.2 DNS响应报文中的资源记录部分类型:类型说明RR的类型码,类通常为1,指Internet数据。9.2.2 DNS响应报文

7、中的资源记录部分生存时间字段是客户程序保留该资源记录的秒数。资源记录通常的生存时间值为2天。9.2.2 DNS响应报文中的资源记录部分资源数据长度说明资源数据的数量。该数据的格式依赖于类型字段的值。对于类型1(A记录)资源数据是4字节的IP地址。9.2.2 DNS响应报文中的资源记录部分资源数据:服务器端返回给客户端的记录数据。9.3 DNS查询举例9.4 DNS用UDP还是用TCP注意到DNS名字服务器使用的熟知端口号无论对UDP还是TCP都是53。这意味着DNS均支持UDP和TCP访问,但使用tcpdump观察的所有例子都是采用UDP。那么这两种协议都在什么情况下采用以及采用的理由都是什么

8、呢?1、DNS使用TCP传输的情况一当名字解析器发出一个查询请求,并且返回响应中的TC(删减标志)比特被设置为1时,它就意味着响应的长度超过了512个字节,而仅返回前512个字节。在遇到这种情况时,名字解析器通常使用TCP重发原来的查询请求,它将允许返回的响应超过512个字节。既然T C P能将用户的数据流分为一些报文段,它就能用多个报文段来传送任意长度的用户数据。2、DNS使用TCP传输的情况二此外,当一个域的辅助名字服务器在启动时,将从该域的主名字服务器执行区域传送。我们也说过辅助服务器将定时(通常是3小时)向主服务器进行查询以便了解主服务器数据是否发生变动。如果有变动,将执行一次区域传送。区域传送将使用TCP,因为这里传送的数据远比一个查询或响应多得多。9.5 DNS高速缓存每个域名服务器都维护一个高速缓存,存放最近用过的名字以及从何处获得名字映射信息的记录。可大大减轻根域名服务器的负荷,使因特网上的 DNS 查询请求和回答报文的数量

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论