域名的概念与机制_第1页
域名的概念与机制_第2页
域名的概念与机制_第3页
域名的概念与机制_第4页
域名的概念与机制_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、域名的概念与机制RFC1034、1035介绍2013-8-30技术研发中心1 DNS背景介绍2 域名空间和资源记录(DNS and RR)3 域名服务器(NS)4 解析器(Resolver)5 常用结构域名的历史主机名与IP地址映射需求nIP地址难于记忆n能否用便于记忆的名字来映射IP地址?域名的历史Hosts文件nHosts文件记录了主机名和IP地址的映射信息n由NIC(Network Information Center)负责维护HOSTS.TXTDNS(Domain Name System)DNS系统的作用n提供了主机名和IP地址间的转换DNS系统的模式n采用C/S结构DNS系统的结构n

2、具有树状结构的,联机分布式数据库系统基于使用的一些假设n数据库的初始大小和使用系统的主机成正比,但最终会和用户的数目成正比n大部分的数据改变比较慢,但是系统能够处理一些快速变化的子集n由相应的组织负责分布式数据库的维护n由于数据十分敏感且重要,一定要保证正确性n查询时要避免循环查询n域名系统假设所有的数据是在一个主文件中保存,这个主文件的内容分布存储于系统中的各台主机上,用户通过标准的查询程序Resolover查询基于使用的一些假设系统管理员需要提供:n区域(Zone)边界定义n主文件数据n主文件更新n更新策略描述域名系统需要提供n源数据的标准格式n查询数据库的标准方法n从其他服务器上更新数据

3、的标准方式DNS组成域名空间和资源记录(Domain Name Space and Resource Records)n域名空间是一个树状结构,资源记录是与名字相关的一些数据域名服务器(Name Servers)n保存域名树结构和相应的信息,可以缓冲各种数据,保存域名树中的任何部分解析器(Resolvers)n向域名服务器提出查询请求并将结果返回给客户的程序1 DNS背景介绍2 域名空间和资源记录(DNS and RR)3 域名服务器(NS)4 解析器(Resolver)5 常用结构定义和名词n 域是因特网中一种管理范围的划分n顶级域、二级域、三级域(子域)等n DNS域名结构是包括多级域名的

4、分层架构n顶级域名、二级域名、三级域名(子域名)等n 不同等级的域名之间使用点号分隔,级别最低的域名写在最左边n 每一级的域名都由字母和数字组成,不区分大小写n 域名的根域用”.”表示,以点号结尾的域名称为绝对域名定义和名词域名命名规则 := | := | . := := | := | - := | n := az、AZn := 09例如: A.ISI.EDU XX.LCS.MIT.EDU SRI-NIC.ARPARR定义RR定义owner拥有此RR的域名type16位值,指定RR内的资源类型,抽象资源A主机地址CNAME别名的统一命名HINFO主机使用的CPU和OSMX用于域的邮件交换资源N

5、S权威认证名字服务器PTR指向其他域名空间的指针SOA标记区认证权威的开始RR 定义class16位值,标记协议族或某一个协议实例IN:Internet系统,CH:Chaos系统TTLRR的生存时间,32位整数,单位是秒,用于Resolver缓存RR多长时间RDLENGTH16位值,RDATA的长度RDATA一种类型,有时是依赖于数据的类,长度可变A对于class是IN的,它是一个32位IP地址对于CH,它是后面跟一个16位八进制Chaos地址的域名CNAME域名MX一个域的邮件服务资源的主机名,主机名后有一个16位的配置值NS主机名PTR域名SOA一些域RR的文本表示Master Files

6、n 主文件:包含RR信息的文本文件。常以RR的列表的形式来定义区n 格式$ORIGIN $INCLUDE Master Files当主文件用于定义区时,需要注意:1、文件中的所有RR必须含有相同的类2、区顶点必须是一个SOA RR3、如果存在授权同时又要求有glue信息,则glue信息必须存在4、区中权威节点以外的信息必须是glue信息主名和别名n 现存的系统中有时会对相同的资源有不同的命名n主机、邮箱n 指定其中一个为统一命名(主名),其余的为别名n 域名系统提供使用统一命名的机制(CNAME RR)nCNAME RR中owner为别名,RDATA部分为统一命名n如果一个节点存在CNAME

7、RR,不应该有其他的数据RDATA-CNAME CNAME不会处理Additional段,但是NS可能会重新发起一个针对主名的查询RDATA-MXMXPREFERENCE: 16位值,相同域名下RR的优先级,数值越小,优先级越高EXCHANGE:域名,指定可以充当邮件交换系统的主机Additional段为EXCHANGE指定主机的地址RDATA-NS NSNSDNAME:指定类和域的权威认证的主机NS记录中可以利用Additional段内容来查找A记录,或者作为参照使用时,发起一个属于glue信息的区的查找RDATA-PTRPTRPTRDNAME:指向域名空间某一位置的域名与CNAME类型,不

8、需要处理Additional段RDATA-SOASOARDATA-AAADDRESS:32位网络地址(2 or )不需要处理Additional段。查询n 查询:发向NS并要求响应的一个请求n以UDP或TCP形式进行传输n响应可以是查询结果、另一个NS地址或者错误信息n请求和响应有标准格式n 主要使用的有标准查询、反向查询(可选)n 查询信息的格式Header报文头,必须存在,定义报文是请求还是应答、报文头,必须存在,定义报文是请求还是应答、查询类型,其他段是否需要存在等查询类型,其他段是否需要存在等Question包括查询名和其它参数Answer包括查询结果

9、的RRAuthority包括一个RR,RR包含另一个NSAdditional包括一些在其他部分使用RR时会有用的信息查询Header标准查询标准查询格式:nQNAMEnQTYPEn任意一种type类型nAXFR进行整个区传输的请求nMAILB邮箱相关记录的请求n*所有记录nQCLASSn 任意一种class类型n*任意一种class标准查询QNAME=ISI.EDU,QTYPE=MX,QCLASS=INResponse:Answer section:Additional section:反向查询(可选)域字服务器反映资源和域名之间的映射关系标准查询:将域名映射到SOA RR反向查询:映射SOA

10、 RR到域名n主要用于调试以及和数据库支持相关的活动n不返回正确的TTLn查询结果不进行缓存n映射主机地址到主机名时,要用IN-ADDR.ARPA域反向查询(可选)IN-ADDR.ARPA域逆向解析域( IN-ADDR.ARPA ):实现逆向域名解析与反向查询的区别:该域名空间是根据基于地址的结果,因此可以保证查找到正确的数据而不用遍历整个域名树域名:除IN-ADDR.ARPA后缀外,最多有4个标签 对于指定的主机或网关,IN-ADDR.ARPA域和普通的域可能在不同的zone中,两者的数据有可能不相同网关在不同域中的名字可能不同,只有一个是主名系统利用域数据库进行路由的初始化时必须有足够的网

11、关信息以保证可以访问到正确的NS例:70 18.1 DNS背景介绍2 域名空间和资源记录(DNS and RR)3 域名服务器(NS)4 解析器(Resolver)5 常用结构域名服务器(NS)n NS用于存储构成域名数据库的信息n NS的最基本工作是响应查询n NS的数据被分成很多部分,称为区(Zone):n一个给定的区可以根据不同的NS来保证其有效性n给定的NS通常支持一个或多个区n区的划分方式有2种:class、cutn所有的区至少有一个节点,域名和所有特定区内的节点都是相连的n利用树形结构最靠近根的节点来标记一个区

12、区(Zone)区的数据包含4个主要部分n区中所有节点的认证数据n定义区内顶节点的数据nNS RRnSOA RRn描述代表子区的数据n访问服务器子区的数据(glue数据)所有这些数据都以RR的形式表示,所有区可以用RR集的形式描述区的维护和传输n区管理员的部分工作就是维护所有服务器上的区数据,当必须修改时,修改需要通知到所有的NS。n通常的自动更新模式是一个服务器是区的主服务器,管理员对区内的域名文件(master file)进行修改,修改后管理员通知主服务器装载新的数据,其它的非主服务器定期和主服务器进行同步。n为了知道是否发生了修改,非主服务器必须检查SOA的SERIAL域,只要有改变,SE

13、RIAL域就会改变。n当查询后知道区内的数据已经改变,非主服务器必须通过AXFR请求请求主服务器传送区数据。AXFR可能会被拒绝而产生错误,但是通常情况下会得到一系列响应信息。查询和响应服务器的响应取决于是否支持递归查询n递归查询( Recursive )n 查询方只送出一个查询, 由NS完成其它所需的查询后响应n 返回本地信息或者错误码n 使用递归需要客户端、服务器双方都支持n非递归查询(Non-Recursive or Iterator)n每一个查询直接给予指示性的响应, 由使用者端再进行后续的查询n返回本地信息或邻近NS的地址或者错误码NS算法n Step 1:是否支持递归查询,如果支持

14、,转Step 5;n Step 2:查询最靠近QNAME ancestor的节点所在的区,如未找到,转Step 4;n Step 3:在区内从上到下进行匹配,匹配结束的条件有以下几个:n 如果整个QNAME匹配,就找到了。n 如果数据为CNAME,QTYPE不匹配CNAME,复制CNAME RR到answer段,QNAME变为CNAME RR的统一命名,转Step 1;否则复制所有匹配QTYPE的RR到answer段,转Step 6n 获得一个参照(referral),复制NS RR到authority段,其他段随便放上什么地址或者关联RR,转Step 4n 不可能匹配时,查看是否存在”*”。

15、如果不存在,响应中设置错误并退出;否则,以RR和QTYPE匹配,匹配成功,复制到answer段,将RR的owner设为QNAME,转Step 6NS算法n Step 4:在cache中进行匹配,如果找到QNAME,复制所有匹配QTYPE的RR到answer段,如果没有从认证权威来的授权,在cache中找最好的复制到authority段,转Step 6;n Step 5:使用本地resolver响应请求。保存中间CNAME在内的结果到answer段到应答中;n Step 6:仅使用本地数据,并试着加入其它可能有用的RR到查询的additional段,然后退出。通配符(Wildcards)n Wi

16、ldcards:以”*”作为域名开头的RRn 查询结果不能缓存n 不适用于以下情况:n查询是在别的区中n如果区中已经存在了它代表的某个域例如:Wildcard RR有”*.X”,如果区中已经包含了B.X,则*.X不代表B.X、A.B.X或X,而只能代表Z.X否定响应缓冲(可选)n 否定响应缓冲:服务器返回一个否定响应和一个TTL,Resolver可以认为在TTL的时间之内相同的查询都会获得否定响应。n 实现的方法是当数据是被认证时服务器加入一个SOA RR到响应的附加区域。1 DNS背景介绍2 域名空间和资源记录(DNS and RR)3 域名服务器(NS)4 解析器(Resolver)5 常

17、用结构解析器(Resolver)n Resolver:通常以函数库的方式嵌在操作系统中,负责接收各类应用程序的DNS查询请求,并把请求转发给域名服务器。解析器与域名服务器之间存在两种工作方式,递归式和非递归式。且域名服务器之间使用的也是这两种工作方式。n 典型函数:n主机名到主机地址的解析n主机地址到主机名的解析n常用查询功能解析器(Resolver)n Resolver的实现步骤:n将用户请求转化为查询报文n发送查询n尽可能地使查询得到解答n查询时间尽可能地短n避免过度的查询n处理应答n解析应答数据n匹配应答数据和查询Resolver的资源 Resolver可以访问本地服务器保存的区数据;本

18、地信息指缓冲和共享区数据,在有认证数据和缓冲数据时应该优先使用认证数据SNAME要查询的域名要查询的域名STYPE查询请求的QTYPESCLASS查询请求的QCLASSSLIST表示正在查询的域名服务器和区,它保存Resolver的预测,预测希望查询的数据在什么地方,通过接收的数据,此结构内的数据会发生变化。它包括服务器地址,区内已知的服务器,历史记录,以及表示查询距离目标还有多远的标记(查询从树顶开始向下,直到目标)SBELT用于Resolver无法从本地信息知道应该查询哪个服务器时CACHE保存前一次响应的结果,因为Resolver会抛弃达到TTL时间的RR,所有大部分Resolver实现将接收到RR的时间转换为绝对时间,然后保存在缓冲中,Resolver可在查询

温馨提示

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

评论

0/150

提交评论