域名的概念与机制(2)
来源:asp之家 发布时间:2010-02-05 19:11:00
2.6. 资源记录
域名标记结点,每个结点都有资源信息集,些集可以为空。资源信息集和由分离资源集(RR)的特殊名字相关联。在集中的RR顺序没有关系,标记有这东西就是了,它不用由名字服务器,resovler或DNS的其它部分保存,只在这儿有。特定的RR我们认为有以下几个:
owner
RR能够被找到的域名
它是一个16位值,指定RR内的资源类型,它指一个抽象资源,具体的标记有以下几个:
A
主机地址
CNAME
一个拟名的统一命名
HINFO
标记由主机使用折CPU和OS
MX
标记用于域的邮件交换资源
NS
此域的权威认证名字服务器
PTR
指向其它域名空间的指针
SOA
标记区认证权威的开始
class
它是一个16位值,标记协议族或某一个协议实例,本文中使用IN代表internet系统,CH代表Chaos系统
TTL
它是RR的生存时间,它是32位整数,单位是秒,它主要用于resolver缓存RR多长时间
它是一种类型,有时是依赖于数据的类,它描述了以下资源:
A
对于class是IN的,它是一个32位IP地址,对于CH,它是后面跟一个16位八进制Chaos地址的域名
CNAME
域名
MX
作为一个域的邮件服务资源的主机名,主机名后有一个16位的配置值
NS
主机名
PTR
域名
SOA
一些域
拥有资源的名字通常是隐式的,不构成RR的一部分。TTL时间只影响缓冲内的数据,不影响区内的已经保存的认证数据。TTL通常由管理员设置,TTL=0表示禁止缓冲。RDATA内的数据是二进制串和域名的混合。域名通常使用指针指向DNS内的其它数据。
2.6.1. RR的文本表示
RR在DNS中是以二进制形式表示的,而在名字服务器或resolver中保存的时是经过压缩编码处理的。本文中我们采用相同于主文件中表示的表示方法,也就是不压缩的方法,以便显示RR的内容。行开始时给出谁拥有RR,如果这一位置空出,就表示本行RR的拥有者和上面RR的拥有者是一个。其后是TTL,type和RR的class。RR的RDATA部分是在当前数据的表示类型的基础上得到的。下面是一些RR的例子:
ISI.EDU. MX 10 VENERA.ISI.EDU.
MX 10 VAXA.ISI.EDU.
VENERA.ISI.EDU. A 128.9.0.32
A 10.1.0.52
VAXA.ISI.EDU. A 10.2.0.27
A 128.9.0.33
其中我们注意到MX那一部分,它的RDATA部分有是一个16位数后面跟一个域名组成。其它的也就不说了。本例子显示了6个RR,第三个域名有两个RR。下面是一个例子,它显示在不同的class下如何表示:
XX.LCS.MIT.EDU. IN A 10.0.0.44
CH A MIT.EDU. 2420
2.6.2. 别名和统一命名
现存的系统中有时会对相同的资源有不同的命名,不但主机是这样,邮箱也是这样,不同的名字指向的是同一个位置。大部分系统都能够对多个名字指定一个是统一命名的结果,另外的是别名。域名系统提供使用统一命名的机制(CNAME RR),CNAME RR标记它的owner名为别名,并指出在RDATA部分的相应统一命名。如果一个结点存在CNAME RR,不应该有其它的数据,这保证了统一命名和它的别名不能不同。这也使得缓冲的CNAME可以不用检索认证权威服务器就可以提供服务。在有CNAME RR时,DNS软件如果查询不到与域名相关的资源,它会检查资源集中是不是有一个有匹配class的CNAME,如果有,名字服务器返回的应答中包括这个CNAME记录,并根据在CNAME中指定的数据开始新的查询。下面我们看一个例子,假设名字服务器处理对USC-ISIC.ARPA的查询,它要求查询A信息,下面是RR的内容:
USC-ISIC.ARPA IN CNAME C.ISI.EDU
C.ISI.EDU IN A 10.0.0.52
这两个RR都作为响应返回,而只查询CNAME的*查询则只返回CNAME。
RR中指向其它名字的域名应该指向主名而不是别名,这就避免了查询中过多的转向查询。例如,对于上面的RR,它的IN-ADDR.ARPA记录应该是:
52.0.0.10.IN-ADDR.ARPA IN PTR C.ISI.EDU
最后指向的是C.ISI.EDU,而不是USC-ISIC.ARPA,当然一个健壮的域名软件不会因为提供了循环的CNAME而失败。
2.7. 查询
查询就是发向名字服务器要求响应的一个请求。在Internet上,这种请求以UDP或TCP传输,名字服务器的响应可以是查询结果,或是另一个名字名字器地址,要么就是一个错误信息。通常用户并不直接发送请求,而是向resolver发送请求,由resolver依次将一个或多个请求发向名字服务器,并负责处理错误情况。请求和响应有标准格式,它们包括一个头和数个固定的域,然后是包括查询参数和RR的四个部分。头中最重要的域是称为操作符的东西,它指出要进行什么操作。在所有可能的16个值中,标准查询是必须的,反向查询和状态查询是可选的,有一个完全查询已经过时,其它的还未指定。而上面的提到的四个部分如下:
Question
包括查询名和其它参数
Answer
包括查询结果的RR
Authority
包括一个RR,但这个RR包括的是另一个名字服务器
Additional
包括了一个些在其它部分中使用RR时会有用的信息
请注意:因头中操作符(码)的不同,这些部分的内容可能不同,但格式可是一样的。
2.7.1. 标准查询
标准查询指定一个目标域名(QNAME),查询类型(QTYPE)和查询类(QCLASS),然后寻找相应的RR,这类的查询占了DNS查询的绝大部分,如果未有特殊说明,一般都指这种查询。
QTYPE和QCLASS域为16位,是定义的type和class的超集。QTYPE域可以包括:
:和相应类型相匹配的RR matches just that type. (e.g., A, PTR).
AXFR:由QTYPE指定的特定区
MAILB:和RR相关的所有邮箱
*:所有RR类型
QCLASS域可以包括:
:和相应类相匹配的RR
*:所有的RR类
使用查询域名,QTYPE和QCLASS,名字服务器就会检查相应的RR,服务器可以返回一个可能包括相应RR的服务器名。例如:希望向Mockapetris@ISI.EDU发邮件,应用程序会向resolver要求了解关于ISI.EDU的信息,会产生下面的查询:QNAME=ISI.EDU,QTYPE=MX,QCLASS=IN,可能产生响应的区可能是:
ISI.EDU. MX 10 VENERA.ISI.EDU.
MX 10 VAXA.ISI.EDU.
随此以外还有:
VAXA.ISI.EDU. A 10.2.0.27
A 128.9.0.33
VENERA.ISI.EDU. A 10.1.0.52
A 128.9.0.32
服务器假设如果请求者希望得到邮件交换(exchange)信息,它会马上请求交换服务器的地址,所以找到两个。这里需要注意QCLASS=*类型的查询,因为服务器不可能知道了解域名系统中所有类的可用信息,它也不是所有类的认证权威,因此这类查询不能得到认证。
猜你喜欢
- GoDaddy.com, Inc. 已与Google合作,来为你提供一种你在创建你的共享托管账户是就可以用来立即登陆你的网站数据的站长管理工
- 内链:顾名思意就是在自己网站的内容中的相关文字加入链接,并且链接到网站内部的相关页面。合理的网站内空链接构造,能提高搜索引擎的收录与网站权重
- SMTP被用来在因特网上传递电子邮件。文件RFC821规定了该协议的所有细节。但是你只须记住下面的内容--该协议的基本命令和方法就行了。协议
- 做为全球最知名的开源程序之一的WordPress的强大是众所皆知的,WordPress几乎已经成了独立博客程序的代名词。而事实上,随着Wor
- 可以在首页调用,显示任意指定栏目 标题、列表,搜索了半天,没看到什么好用的,自己瞎摸索整了个,分享一下。其中:typeid='栏目I
- 企业信息化技术的应用,以不可逆转。随着文件服务器、ERP管理软件等等在企业中生根发芽,应用服务器也逐渐在企业中普及起来。以前在企业中有一台应
- 一直一来,我觉得在百度搜索框里输入link:你的域名,这样得出的反链数能很大影响网站的排名。但经过一段时间的努力,我觉得这个想法不够准确。我
- 时下火爆的SNS游戏《开心农场》想必已经是很多朋友每天必玩的游戏啦。看着自家的田园,从播种、浇水、施肥、除虫到收获,望着采摘下来的沉甸甸的果
- 11月19日消息,中国领先的社区平台与服务提供商康盛创想(Comsenz)旗下核心产品Discuz!新版正式发布。全新推出的Discuz!
- 我们一直致力于为发布商提供充足的数据信息,从而让您更好地了解自己的网站运营和广告效果。现在我们很高兴地告诉大家,AdSense 帐户将会融入
- (一)硬件准备一台HP ProLiant DL160 G5服务器(硬盘拓展到480G)一台个人电脑(windows操作系统)一个Lenovo
- 每个人都梦想自己的网站进入主要搜索引擎的十大排名,但真正做到的却很少!就如我的非主流网站http://www.fzl63.com也在为这一目
- 做网络推广几年了,天天在几个站长站潜水,文章天天看但基本没写过,总觉得说来说去就那么些东西。前段时间研究了下Twitter类网站,Twitt
- 今天谈一个关于搜索引擎优化细节得有点无聊的问题。以前在论坛里有朋友问,什么样的文章长度有利于SEO?首先先说两句基本上永远正确的废话原则:1
- 美国东部时间10月21日17:32(北京时间10月22日5:32)消息,据国外媒体报道,九城(Nasdaq:NCTY)美国股东劳伦斯·格拉泽
- 在一个虚拟主机的服务器上,有NN多站,可能我们通过某种途径搞到了一个webshell,可是找不到apache等web服务器的配置文件,找不到
- 熟悉Windows Server 2003的朋友,相信对RMS(权限管理服务)都不会陌生,它能够有效的保护我们的数字资产在相应授权范围之外不
- 近日,康盛创想BBS与SNS社区产品双剑合璧,推出了Discuz! 7.0和UCenter Home (简称UCHome)1.5。这两款社区
- IBM高级副总裁及成本削减专家罗伯特·莫法特(Robert Moffat)因涉嫌内幕交易,在10月30号离开IBM公司
- 很多朋友对Google的排名算法如数家珍,操作起来很顺手。却对百度的降权、不收录等问题一筹莫展。君不见Google左侧排名,Google排名