泉州V23网络为您的企业打造精品网站:  800元起"网站建设+精美网页设计+搜索引擎推广"服务!! 7*24咨询:13559567956
网站建设客户中心联系我们网站地图
 
V23首页网站制作网站推广域名空间付款方式联系我们
网站建设相关文章

域名注册、解析和分布


Internet上计算机之间的TCP / IP通信是通过IP地址来进行的。因此, Internet上的计算机都应有一个IP地址作为他们的唯一标识。域名系统是用于注册计算机名及其I P地址的。DNS是在Internet环境下研制和开发的,目的是使任何地方的主机都可以通过比较友好的计算机名字而不是它的IP地址来找到另一台计算机。DNS是一种不断向前发展的服务,该服务通过Internet工程任务组(IFTF)的草案和一种称为RFC(Request For Comment)文件的建议不断升级的。在本书的后续章节将介绍这些草案和R F C文件的存放地点。不要混淆域名系统服务器和域名系统。域名系统服务器只是域名系统中的工具,通过它们不停的工作来实现域名系统的功能。本章将介绍域名系统和域名系统服务器,请随时注意两者的差别。
DNS服务器为客户机提供一种方法来存储和搜索其他主机的主机名和I P地址,这里所说的客户机可以是单独的计算机用户、应用服务器,甚至是其他DNS服务器。主机是计算机的另一种名称,主机名就是计算机在域名系统中使用的名字。域名空间是指Internet上所有主机的唯一的和比较友好的主机名所组成的空间,它是一个重要的概念。每一个主机名及其IP地址存储在一台或多台DNS服务器中,以便Internet中的其他用户可以通过计算机名来搜索相应主机的IP地址。为此, DNS服务器之间必须能进行可靠的通信,以便将Internet域名树的每一个分支捆绑在一起以形成一个综合系统。域名树是域名空间的骨架,DNS服务器工作时可在其上下左右移动。第2章中将详细介绍DNS是如何工作的并讨论域名空间是什么。
域名服务中有两个最基本的概念:域名注册和解析。这两个概念对于理解DNS名字和DNS服务器都非常重要。但是,让我们首先简单地介绍一下注册和解析的对象:主机名和I P地址。
1.1.1 主机名和I P地址
DNS的数据文件中存储着主机名和与之相匹配的IP地址。从某种意义上说,域名系统类似于存储着用户名以及与此相匹配的电话号码的电话号码服务系统。虽然DNS记录中除了主机名和IP地址外还有一些其他的信息, DNS系统本身也有一些较复杂的问题要讨论,但D N S最主要的用途和对用户来说最重要的价值是,通过它可以从主机名找到与之匹配的I P地址,并且在需要时输出相应的信息。
1.1.2 主机名的注册
主机名和I P地址必须注册。注册就是将主机名和I P地址记录在一个列表或者目录中。注册的方法可以是人工的或者自动的、静态的或者动态的。过去的D N S服务器都是通过人工的方法来得到原始的主机注册,也就是说,主机在DNS列表中的注册是要由人工从键盘输入的。最近的趋势是动态的主机注册。更新是用DHCP服务器触发完成的,或者直接由具有动态DNS更新能力的主机完成。DHCP是Dynamic Host Configuration Protocol的缩写,即动态主机配置协议。
除非使用动态DNS,DNS注册通常是人工的和静态的。Windows 2000中就提供了动态DNS的功能。当主机的信息有所变化时,主机记录的更新通常由人工来完成。图1 - 1表示了若干主机在DNS服务器中的注册。在DNS服务器中,最主要的信息只是主机名和IP地址(某些重要的例外见第4章)。





图1 - 1并没有表示出主机名是如何注册的,因为注册的方法并不是只有一种。当然人工注册是最常见的,但也有若干自动注册的方法。自动注册的方法之一就是让DNS服务器去查阅WINS服务器。本书中将不断提到DNS和WINS的交互。通过WINS服务器的自动注册方法将
在第16章中介绍。
另一种自动注册的方法是通过DHCP服务器向具有动态DNS能力的DNS服务器注册名字。也就是DHCP服务器在客户机上网时自动给它分配一个I P地址。因为该方法经过完整的测试并受到广泛的支持,所以它是使用各种D N S服务器最容易的方法。该方法几乎在任何情况下都能正常工作。当注册完成以后(尤其是当已被提醒成功时),所有的DNS服务器都收到了主机的注册信息。
大多数的计算机由人工向一台DNS服务器进行注册,这台服务器一般是和这些计算机在同一个大楼或者同一个校园,或者至少在同一个企业内。一般来说,中型或大型企业都有自己的DNS服务器。这时编辑和修改服务器的主机列表将比求别人—如Internet服务供应商—注册主机的变化既迅速又容易。当使用UNIX 或Windows 2000时,如果有一个内部环境,就很有可能需要自己在内部运行DNS。 
主机名必须在DNS服务器中注册,这台服务器称为主服务器。辅DNS服务器自动地从主DNS服务器获得所有的数据。管理员对这种备份很感兴趣,因为这可以让他们在几个不同的地方安置具有相同数据库的服务器。例如,中心办公室可以有一台主DNS服务器,而远地的机构可以有本地的辅服务器,以便加速地址的查找,也可防止因网络失效而找不到DNS服务器。主、辅DNS服务器的搭配使得所有的服务器都能找到已注册的主机,客户机能从离它最近的服务器获得回答。如果本地网络中的D N S服务器失效,无论安装的是Windows 2000还是其他操作系统,对主机的可用性都是一场灾难。而且如果一些主机通过辅服务器解析域名,还可以获得一定的负载平衡。
1.1.3 主机地址的资源记录
无论主机注册是如何完成的,这种注册的主要目的是在某个列表中记录下其他计算机在需要时可以被查到的主机名及其源地址,这种记录称为资源记录。资源记录可以有多种格式,第4章中将做详细介绍。
图1 - 2显示了在Windows 2000 DNS管理器上显示的几个计算机的主机记录。





如果使用的是UNIX DNS服务器和文本方式的配置文件,其条目就很像主机在这些记录中的注册( IN代表Internet,A代表地址Address ):如果使用的是Windows 2000 DNS,则可以将记录信息记录在同样的文件中,但也可以不必这样做。第一列为主机名(如host1),第二列为记录的类型(本例中为Internet),第三列为资源记录的类型(A代表地址),第四列为IP地址。





1.1.4 主机名的解析
只要进行了注册,主机名就可以被解析。解析是一个客户端过程,目的是查找已注册的主机名或者服务器名以便得到相应的IP地址。客户端得到了目标主机的IP地址后,就可以直接在本地网上通信,或者通过一个或几个路由器在远程网上通信。显然,一个DNS服务器可以有许多已注册的主机。解析注册在同一台DNS服务器上的其他主机名应该是比较快的。一个具有上千主机的企业只需要少数几台DNS服务器。图1 - 3显示了DNS客户机如何解析另一个在同一台DNS服务器注册的主机名。





1. 解析器
本章对主机名查询的解释似乎意味着DNS服务器担当了所有的主机名解析工作。对此,必须有所澄清。实际上,主要的角色是一种称为解析器的程序,解析器运行在所有使用TCP / IP协议的有DNS能力的计算机上。解析器将包含网络主机域名的路径描述转换为查询请
求。解析器甚至还可以缓存已定位的主机,以加速接通的过程。
解析器几乎无所不在,可以是本地的或者远程的,可以在客户机上也可以在DNS服务器上。DNS服务器可以在需要时通过解析器查询另一台DNS服务器,这种情况是经常发生的。
当一台DNS客户机作为客户机时,它的解析器就处于工作态,当一台DNS服务器作为客户机时,它的解析器也处于工作态。当一台DNS服务器作为服务器使用时,它的作用就是响应客户机的解析器的查询,而这台客户机也可能是另一台DNS服务器。
RFC文件国际标准化机构和志愿管理机构共同管理Internet。这些管理机构通过工作委员会使用RFC文件来评估一些有可能成为标准的新思想。RFC文件可以由个人提出,也可以是出于某种商业利益的考虑。有不少RFC文件变成了正式的标准。要查阅RFC文件,可以通过http : / / www.dns.net/dnsrd/ 访问其中的域名服务资源目录,即dnsrd目录(Domain Name Services Resource Dictionary)。对DNS、Internet协议以及I n t e r n e t本身的标准制定有影响的机构有:
? Internet体系结构组(I A B , Internet Architecture Board)。
? Internet授权地址分配组(IANA, Internet Assigned Number Authority),w w w. i a n a . o rg。
? Internet工程指导组(I E S G, Internet Engineering Steering Group),w w w. i e t f . o rg / i e s g . h t m l。
? Internet工程任务组(I E T F, Internet Engineering Task Force),w w w. i e t f . o rg。
? Internet 协会(ISOC, Internet Society),w w w. i s o c . o rg。
? Internet网络信息中心(I n t e r N I C),w w w. i n t e r n i c . n e t。
RFC 1034“域名:概念和设备”中指出,解析器至少要访问一台域名服务器来直接得到所需信息,或通过其他的域名服务器来继续跟踪查询。在RFC 1034的第5、6页中说:“从解析器的角度来说,域名系统是由数目不详的域名服务器组成的,每台域名服务器具有整个域
名树中的一个或几个分支的数据。”
经过查询后,返回给解析器的结果可能是下列结果中的一种(见RFC 1034第2 9页):
? 给出所需数据的一个或几个资源记录。在这种情况下,解析器将以适当的格式返回得到的回答。
? 主机名错误。当所查询的名字不存在时给出这种错误。例如,可能是用户在键入主机名时出错。
? 数据未找到错误。当存在所查询的主机名,但找不到相应的数据时出现这种错误。
2. 逆向查找
到目前为止,我们的讨论都是围绕着D N S如何从主机名查到I P地址。但也可以由I P地址来查找主机名,因为, DNS服务器中的数据文件是自动排序或者自动索引的,以便快速由名字查找,从I P地址出发的逆向查找还需要数据库按I P地址进行排序或索引。逆向查找也称为反向查询。
DNS服务器用来进行逆向查找的数据库称为in - addr. arpa区或者称为A R PA域中的Internet地址区。如果仔细观察图1 - 2,可以看到属于207 . 33 . 46 . 9域名服务器的46.33.207. in-addr. arpa区。这个in - addr区包含一个从I P地址到主机名的数据库,以便服务器执行从I P地址出发而不是从主机名出发的查找。第4章在讲述反向地址记录( PTR)时将讨论这种反向映射是如何建立的。
逆向查找的使用并不像正向查找那样普遍,但也不时有所使用。大多数的逆向查找是在用户(如系统管理员)已经知道本地主机的I P地址,但需要查找它的主机名时进行的。逆向查找的一种实际用途是查找一个已知I P地址的主机的全域名。FTP服务器有时也通过逆向查找来证实所连接的主机是否为它所宣布的主机。另外,一些工具如nslookup也使用逆向查找的特性(见第1 2章)。这种技术提供了另一种验证所连接的主机是否为假冒的方法,这可以减少但不能消除攻击。
3. DNS服务器的搜索顺序
可以设置D N S客户机为解析主机名搜索DNS服务器的顺序。图1 - 4显示了Windows 95客户机搜索D N S服务器的顺序。列表中的第一个DNS服务器地址为192 . 168 . 1 . 24,这台客户机就是在这台服务器中注册,并成为example . net域的一个成员。如果客户机通过查询第一台服务器不能得到答案,它将继续查询第二台、第三台服务器。Windows 2000 客户端的设置允许列表中有更多的服务器。第1 4章将详细介绍不同版本客户端的配置。





客户机所注册的DNS服务器应该是所属域的主服务器,大多数管理员也将这台服务器设置为客户机的首选搜索服务器。但并没有理由一定要求首选搜索服务器必须是主服务器或注册服务器。事实上客户机使用辅服务器作为首选搜索服务器是很普遍的。当使用动态DNS注册时,如果客户机试图在辅DNS服务器注册,辅DNS服务器将把请求提交给主DNS服务器,也就是说不会造成真正的错误。后续部分将介绍许多关于对不同类型的需求使用不同类型的服务器的策略。
搜索服务器的顺序完全是可选的。为了解析域名,首先查询的DNS服务器并不一定是机器所注册的服务器。第二台和第三台搜索服务器也可以是任何你觉得合适的服务器,如可以是在其他域中的服务器、ISP的域名服务器或者其他可以快速响应查询的服务器。只要列表中有一台服务器响应了客户机,搜索就立即终止。
1.1.5 主机名的分布
并不是一台单独的DNS服务器就包含了全世界的主机名,这是不可能的。如果存在这样的主DNS服务器的话,客户机和这台服务器的距离就太遥远了。也很难想象这样一台为整个Internet服务的DNS服务器需要多大能力和带宽。除此以外,如果这台主DNS服务器停机的话,遍布全球的Internet将陷入瘫痪!与这种设想相反,主机名分布于许多DNS服务器之中。
主机名的分布解决了不是只用一台D N S服务器的问题,但这对客户机又出现了另一个问题:客户机如何得知向哪一台DNS服务器查询?域名系统通过使用自顶向下的域名树来解决这个问题,每一台主机是树中某一个分支的叶子,而每个分支具有一个域名。重要的是,你所拥有的每一台主机都和一个域相关联。那究竟总共需要多少DNS服务器呢?尽管实际的数字是不可知的,并且依实际原因而变化,但从理论上来说,域名树的每一个分支需要一台DNS服务器。
当一台客户机需要另一台主机的IP地址时,一般它首先查询自己所在的DNS服务器,前提是这台服务器列在搜索次序的首位。如果这台服务器并没有所要查询主机的记录,查询便将在树中向上移动,到达高一级服务器,最终能找到一台给出查询结果的服务器。为了完全理解DNS域和服务器的这种相互依存关系,可以想象域名树本身是一种分层的域名结构,如图1 - 5所示。





除非因某些特殊的原因使得DNS服务器和外界没有联系,否则,每台DNS服务器总是和其他服务器一起成为整个Internet域名层次中的一员,没有一台DNS服务器会是一个孤立的小岛。每台服务器都会在Internet域名服务中承担一定的责任,即使只是承担一个小企业的域名或者一个大企业域名的一部分。
1.1.6 专用DNS服务器
DNS服务器也工作于不与Internet相连接的专用网络。这些服务器甚至可以在物理上和Internet相接,但不参与公共的域名空间。专用服务器必须和公共网络隔离,否则会引起严重冲突。IP地址必须是统一分配的(见第6章),域名则必须注册(见附录D)。为建立专用网络,必须使专用网络与公共网络隔离,并且只使用为专用网络保留的IP地址。
如果使用公用的并且没有被分配的I P地址,以后和公用网络进行连接时将会遇到一系列的问题。RFC 1597的“专用I n t e r n e t的地址分配”讨论了这个问题。类似于公共网络,专用网络也需要根域名服务器。附录B将说明如何得到有关信息。RFC 2010的“根域名服务器的操作准则”中对公共根域名服务器做了讨论。RFC 1034的“域名:概念和设备”则讨论了根域名服务器的设计。根域名服务器是位于D N S域名空间顶层的服务器。 


$$$$$$$$$$$$$$$$$$$$$$$$$$$$
IP地址与域名的区别 
2004年9月22日 网络 
IP地址是整个Internet统一的地址标识符,其目的是屏蔽物理网络细节,使得Internet从逻辑上看是一个整体的网络。在实际的物理传输时,都必须先将IP地址"翻译"为网卡物理地址,因此,IP地址是一个逻辑意义上的地址。
IP地址的定义,除了有A类、B类、C类的网络号和主机号的区别外,还有一些固定的特殊地址,这些特殊地址用于一些特殊的目的。如主机号全为"1"的IP地址用于网络广播,255.255.255.255用于本网的有限广播,0.0.0.0被解释为本网络,若主机试图在本网络内通信而又不知道本网网络号,可以使用"0"此地址。而且,TCP/IP规定:网络地址127是一个保留地址,用于网络软件测试以及本地机进程间通信,叫做会送地址。含网络号127的分组不能出现在任何网络上,主机和网关不能为该地址广播任何寻径信息。

IP地址(Internet Protocol Address)是为连接在Internet上电脑所创造的辨别方法,共12位,可用四个十进制数表示,每个数的取值范围为0~255,每个十进制之间用","号隔开(如255.255.255.0)。每部连在Internet上的电脑拥有一个绝对是唯一且不重复的IP地址,这样我们就很容易通过IP地址在网上成千上万台电脑中找到想访问的信息。

域名提供了一种直观明了的主机标识符。TCP/IP专门设计了一种字符型的主机名字机制,这就是域名系统。其目的在于方便用户使用Internet,它采用层次型管理。在Internet中,一个典型的TCP/IP层次型主机名语法如下:
local.group.site
其中,local表示本地名,group表示管理组名,site表示网点名。名字的各部分(子名)之间以圆点分割。比如,域名mail.tsinghua.edu.cn代表中国教育网内清华大学的邮件服务器,tsinghua. edu.cn代表中国教育网内的清华大学,edu.cn代表中国教育网,cn代表中国。因此,域名地址可以简单理解为直观化了的IP地址。 

由于IP地址作为四段式的数字过于抽象,非常难于记忆,因此有必要使用一种更易被为所记忆的系统。这就好象我们记一个人的名字很容易,可记他的身份证号码却相对来讲麻烦得多一样。根据这种情况,Internet上又制定了另外一套新的规则,也就是采用方便记忆的域名(Domain Name)系统来定义网上电脑。

产生域名的的根本动机在于管理方便,原来的主机名与IP地址映射是保存在NIC的hosts.txt文件中的,当时因为主机数量少,这个文件也不经常变化,因此其它主机几天一次从NIC的主机上下载这个文件进行主机名和IP地址映射就可以了。但随着网络的发展,这种方法变得无法使用,因为经常会有主机要求下载,对NIC的主机造成巨大的压力,而且也不能保证服务的质量。许多局域网用户希望自己管理自己的主机名,而不希望等NIC许多天把自己的主机名加在hosts.txt文件中,有些组织也希望有自己的名字空间配置。是需要一个能够简单管理的方法了。最后决定使用层次式的名字空间组织方案,以.为分隔标准不同的层次。整个名字空间以分布式数据库管理。请看阅读前不要把平常的域名和这里的域名系统混在一起。最好的方法就是把原来的观念忘记了,看现在的新东西。

DNS的设置目标影响了它的结构,主要目标是对资源有一个一致的名字空间,为了避免不同编码带来的问题,需要包括网络标记,地址,路由或其它信息作为名字的一部分。出于对实验数据的分析,看来分布式的存储条件是必须的。要在获取数据的代价和数据准确性之间有一个平衡。需要对名字所代表的资源类型有一个标记。要支持多协议访问。名字服务器操作独立于通信系统。应该能够使用不同的机器都能够使用这一系统,使用的方法可能不同,但是都要能够使用。

设计系统时是基于下面假设进行的:数据库的初始大小和使用系统的主机成正比,但最后数据库的大小会和用户的数目成正比,这一过程会发生在一些资源(如邮箱和其它一些要加入到域名系统中的信息)进入系统开始;大部分的数据改变比较慢,但系统能够对改变有一些快速的适应。由相应的组织负责分布式数据库的维护。域名系统的用户可以选择自己喜欢的主机。因为其中的数据十分敏感而且重要,因此一定要保证正确性,如果因为主机或网络失败而造成无法为用户服务,用户要以原来的数据为准,不要自己胡乱想一个数据就用。在查询的时候要避免循环查询,一种方法是将未找到这一信息返回给用户,让用户再找新的主机寻找相应的地址,一种是由主机找别的主机寻找相应的地址,找到后由相应的主机返回地址给用户,这两个方法各有好处。域名系统假设所有的数据是在一个主文件中保存,这个主文件的内容分布存储于系统中的各台主机上。用户通过标准的查询程序resolover查询。主文件的标准形式使得它可以在不同主机间进行传输(利用FTP,电子邮件等方式)。本地可以使用文本编辑器进行管理,然后将这个文件传输到名字服务器那里,然后通知名字服务器的管理员加载这个文件就是了。对于resolver来说,配置好的名字服务器是地址信息的主要来源。域名系统定义了访问数据的过程和访问其它名字服务器的方法,它还定义了缓冲的大小和更新缓冲的时间等配置信息。

域名系统与IP地址有映射关系,二者相互对应,要实现域名与IP地址的相互转换是依靠一整套的全球DNS(Domain Name System)系统来完成的。大致转换过程如下:用户键入一个域名网址,回车后用户的计算机将此域名发给DNS服务器,由DNS服务器进行域名与IP地址的转换,然后将此IP地址发给用户的计算机,这样计算机即可向此IP地址发出调用信息的请求。由此可知,作为普通用户只需记忆域名就可以访问对应IP的电脑上的信息了。