DNS协议详解-个人整理.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
域名解析过程:本机向本地服务器发出一个DNS请求报文,报文中携带需要查找的域名;本地域名服务器向本机回应一个DNS响应报文,里面包含域名和对应的IP地址;(采用迭代查找)递归查询:本机向本地域名服务器发出一次查询请求,就静待最终的结果。如果本地域名服务器无法解析,自己会以DNS客户机的身份向其它域名服务器查询,直到得到最终的IP地址告诉本机迭代查询:本地域名服务器向根域名服务器查询,根域名服务器告诉它下一步到哪里去查询,然后它再去查,每次它都是以客户机的身份去各个服务器查询。DNS报文协议格式Transaction ID(会话标识)Flags(标志)Questions(问题数)Answer RRs(回答 资源记录数)Authority RRs(授权 资源记录数)Additional RRs(附加 资源记录数)Queries (查询问题区域)Answers (回答区域)Authoritative nameservers(授权区域)Additional records(附加区域)头部:Transaction ID 会话标识(2字节) 是DNS报文的ID标识,对于请求报文和其对应的应答报文,这个字段是相同的,通过它可区分DNS应答报文是哪个请求的响应。Flags 标志(2字节)16位QR (1 bit)查询/响应标志,0位查询,1为响应Opcode(4 bit)0标识标准查询,1表示反向查询,2表示服务器状态请求AA ( 1 bit)表示授权回答TC ( 1 bit)表示可截断的RD ( 1 bit)表示期望递归的RA (1 bit)表示可用递归Rcode (4 bit)表示返回码,0表示没有差错,3表示名字差错。2表示服务器错误数量字段(总共8字节):Questions、Answer RRs、Authority RRs、Additional RRs 各自表示后面的四个区域的数目。Questions 表示查询问题区域节的数量;Answers 表示回答区域的数量;Authoritative namesversers 表示授权区域的数量;Additional recoreds表示附加区域的数量正文部分Queries 区域Name (查询名,长度不固定)Type(查询类型)Class(查询类)1.1.查询名:长度不固定,且不使用填充字节,一般该字段表示的就是需要查询的域名(如果是反向查询,则为IP,反向查询:即通过IP地址反查域名)一般格式如下:6jocent2me0表示其后面的域名长度jocent me长度为2 最后必须为0 长度为61.2.查询类型 TYPE类型助记符说明1A由域名获得IPv4地址2NS查询域名服务器5CNAME查询规范名称6SOA开始授权11WKS熟知服务12PTR把IP地址转换成域名13HINFO主机信息15MX邮件交换28AAAA由域名获得IPv6地址252AXFR传送整个区的请求255ANY对所有记录的请求1.3. 查询类: 通常为1,表明是Internet数据2.资源记录(RR)区域(包括回答区域,授权区域和附加区域)该区域由3个。但格式均一样,分别是:回答区域、授权区域、附加区域域名(2字节或不定长):它的格式和Queries区域的查询名字字段是一样的。有一点不同就是,当报文中域名重复出现的时候,该字段使用2个字节的偏移指针来表示。比如,在资源记录中,域名通常是查询问题部分的域名的重复,因此用2字节的指针来表示,具体格式是最前面的两个高位是 11,用于识别指针。其余的14位从DNS报文的开始处计数(从0开始),指出该报文中的相应字节数。一个典型的例子,C00C (1100000000001100,12正好是头部的长度,其正好指向Queries区域的查询名字字段)。查询类型:表明资源记录的类型。同1.2 表格查询类:对于Internet信息,总是IN生存时间(TTL):单位为秒,表示的是资源记录的生命周期,一般用于当地址解析程序取出资源记录后决定保存及使用缓存数据的时间,它同时也可以表明该资源记录的稳定程度,极为稳定的信息会被分配一个很大的值(比如86400,这是一天的秒数)。资源数据:该字段是一个可变长字段,表示按照查询段的要求返回的相关资源记录的数据。可以是Address(表明查询报文想要回应是一个IP地址)或者CNAME(表明查询报文想要的回应是一个规范主机名)等。

文档评论(0)

js1180 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档