第六章 域名服务及域名服务器的配置.doc_第1页
第六章 域名服务及域名服务器的配置.doc_第2页
第六章 域名服务及域名服务器的配置.doc_第3页
第六章 域名服务及域名服务器的配置.doc_第4页
第六章 域名服务及域名服务器的配置.doc_第5页
免费预览已结束,剩余28页可下载查看

下载本文档

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

文档简介

第六章 域名服务及域名服务器的配置6.1 域名服务的基本概念TCP/IP网络中的寻址主要围绕的是32位的IP地址,然而IP地址的形式并不便于记忆,因此网络上的主机还是使用便于记忆的主机名来进行标记。而域名服务是用于TCP/IP协议的机器域名服务机制,它为主机的IP地址和名字之间建立了一一对应的关系;但需要注意的是此处的主机名字并不是传统意义上的主机名,而是反映了一定的名字作用空间和权限的主机名。我们将在后面的论述中仔细讨论这种命名机制及优势。6.1.1 主机表和/etc/hosts系统将主机名变成对应IP地址的过程,一般称之为主机名解析(hostname resolution)。将主机名解析为IP地址最简单的方法是在每一个UNIX系统中维护一张主机名表,该主机名表通常保存在/etc/hosts文件中。该表格由一个简单的数据库构成,每一条记录包含了一个主机IP地址及其对应的主机名。只要保证文件中主机名的唯一性,通过检索文件中的信息便可以完成主机名的解析。下面是一个hosts文件的例子:# IP address Hostname aliases Localhost maxel flew pixel主机表的解决方案起源于ARPNET,在ARPNET规模很小的时候,通过主机表进行主机名的解析确是一种很好的解决方案;但随着TCP/IP协议应用于ARPNET,网络的规模大幅度增大,维护主机表的开销越来越大,其缺点也越来越明显,主要表现在:1.维护主机表的服务器在网络通信量和处理负载上的开销呈几何级数增大,已经不能容忍。2.由于在主机表(hosts文件)中不能有两台同名的主机,这就极易造成主机名的冲突。尽管可以保证在分配IP地址时的唯一性,但却无法保证主机名的唯一性。3.保持主机表的一致性愈加困难,由于网络处于不断扩充和改变之中,主机表很难实时地描述当前网络的状况。这些缺陷,归根到底是由于主机表文件不具备扩展性(最致命的原因在于其对资源的集中管理) ,因此必须提出一个解决方案来弥补主机表所具有的缺陷。1984年,出现了一种新的名字解析机制域名系统DNS(Domain Name System)。6.1.2 域名系统(Domain Name System)域名系统与大多数的TCP/IP服务一样,也采用客户机/服务器模式。使用域名系统(DNS)将主机名解析成IP地址使用到一个全局的、层次性的分布式数据库系统。该数据库包含了Internet上所有域名与其IP地址对应信息。数据库的层次性允许将域名空间划分成独立管理的部分,并称为域(Domain)。数据库的分布式特性则允许将数据库的各个不同部分分配到不同网络的域名服务器上,这样各域名服务器可以实现独立的管理。名字管理器(Name Server)包含了分布式数据库系统中的部分信息,并利用这些信息,为被称为解析器(resolver)的客户机提供服务。域名服务器运行一个服务器进程(在UNIX系统中一般为named进程),该进程进行名字对IP地址的解析,并且提供一些永久性的主机信息。DNS使每个名字器负责控制整个数据库中的部分信息,并且保证能够在整个网络中存取这些信息。DNS还采用了复制技术和缓存技术,使得在保持整个数据库坚固性的同时,还能够提供较高的性能。域名系统相对于主机表,其优越性主要表现在:1.DNS具有很好的扩充性,它并不依靠一个大表,而是一个分布式的数据库系统,不会因为数据库的增大而陷入困境。2.DNS可以确保在必要的时候将新主机的信息传播到网络中的其他部分,从而能够保证整个系统数据的一致性。6.1.3 域的层次结构DNS是一个包含主机信息的分布式层次结构系统。在DNS下,没有存放全部Internet信息的中心数据库,这些信息分布在一个层次结构中的若干台域名服务器上,这种结构非常类似于UNIX文件系统中的层次结构。它们的结构都组织成倒转的树,根在结构的最顶端。在UNIX文件系统中,根以“/”表示;在DNS中,根的名字以“”表示,并被称之为根域(root domain)。图6-1给出了这种结构的典型例子。图6-1 DNS与UNIX文件系统的层次结构根域的下一级称为顶级域,这些域又可以进一步分割成子域,子域又可进一步分割成子域与UNIX文件系统中划分目录与子目录十分类似。在UNIX文件系统中,目录既可以包含子目录也可以包含文件,同样,域既可以包含主机也可以包含子域。DNS中的域名(domain name)一般相当于文件系统中的绝对路径名,是一个以该域到根域的名字列表,中间以“”隔开,如“”。当然,DNS中的一个域也可以相对其父域来指定名字,类似于文件系统中的相对路径名。需要指出的是,相对于根域的域名称为全域名(FQDN),在DNS中,一个全域名记作一个标记序列,从目标域名开始,以根域名结束。例如是子域cs的一个全域名。域名系统的层次化结构消除了名字冲突的问题。由于每个域被赋予唯一的域名。所以在该域内部就可以自由地选择主机和子域的名字。DNS只要求兄弟节点(为同一个父节点的子节点)的命名具有唯一性,这一限制保证了域名可唯一地标识树中的每一个节点。直接在根域下的顶层域有两种类型的划分方法:地理域和机构域。地理域是为世界上每个国家设置的,用两个字母标识。如中国域是CN,日本域是JP,美国域是US。按照机构类型设置的一些顶层域主要包括:.COM:商业组织,如“”.EDU:教育组织,如“”.NET:网络支持组织,如“”.MIL:美国军事机构.GOV:美国政府机构.ORG:非商业性的一些组织6.1.4 域的委托管理DNS服务的管理不是集中的,它的层次结构允许将整个的管理任务分成多份,分别由每个子域自行进行管理;也就是说,DNS允许将子域授权给其他组织管理。这样,被委托的子域必须有自己的域名服务器;该服务器维护属于该子域的所有主机信息,并负责回答所有的相关名字查询。一个组织一旦被赋予管理自己的域的责任,它就可以将自己的域名分成更小的域,并将其中的某些子域委托出去。将子域的管理委托给其他组织实际上是将DNS数据库中属于这些子域的信息存放到各自的域名服务器上。此时,父域的域名服务器上不再保留子域的所有信息,而只保留指向子域的指针。也就是说,当询问属于某个子域的主机的相关信息时,父域的服务器不能直接回答查询的信息,但它却知道该由谁来回答。采用委托管理的优越性,主要表现在:1.工作负载分散,将DNS数据库分配到各个子域的域名服务器上,大幅度降低了上级或顶级DNS域名服务器进行名字查询的负载;2.提高了域名服务器的响应速度,负担共享使查询的时间大幅度缩短;3.提高了网络带宽的利用率,由于数据库的分布性使得服务器与本地更近,减小了带宽资源的浪费。6.1.5 域(Domain)和区(Zone)的概念需要注意的是,划分一个域并不一定要将划分得到的每个子域的管理权都委托该组织内的其他成员部门。因此,虽然一个子域又被分成一些更低一级的子域,这些域的权限可以和区边界一致,即一个区可以包含父域所拥有的所有子域的一个子集。在图6-2中,如果只有cs子域已经委托给其他组织管理,那么子域将包含phy,ee,cs三个子域,却有2个区,一个mit区,一个cs区。其中mit区包含由mit直接管理的主机,如ee的主机;而cs的主机却属于另外一个区,即区。但是域则包含mit的所有主机。6.1.6 域名服务器(Domain Name Server)域名服务器中保存一个区或多个区中所有主机的信息。如果某个子域已经委托其他组织管理,则该域的域名服务器中不再保存子域中主机的信息,但是将保存指向管理该子域的域名服务器的指针,以备进行域名的解析。edustandfordmitphy ee1csmoonsun23comorg1. 区2. 区3. 域图6-2 DNS中域和区的概念通常,最好为一个区设置多台服务器,这样做的目的主要有三点:1.容错,当某台域名服务器停止工作时,所有的查询请求都能够转发给其他的域名服务器,从而保证整个系统具有很强的健壮性。2.工作负载的分散,因为各台服务器都能够响应所有类型的查询,所以可以让这些服务器公平地分担负载,以减少响应时间。3.物理上接近,当拥有多台域名服务器时,就可以合理地把它们放置到最需要的地方,以减少响应时间。当一个区中具有多台域名服务器时,可以根据其扮演的角色不同而分成两种:主域名服务器(Primary Domain Name Server)和辅助域名服务器(Secondary Domain Name Server)。二者的区别在于:主域名服务器是在启动时直接从本地的数据文件中加载本区的信息;而辅助域名服务器则在启动时与负责本区的主域名服务器进行联系,经过一个称为“区内传输”的过程来复制主服务器的数据库。此后,辅助域名服务器将周期性地查询主域名服务器的数据是否被修改,以保持自己数据库中的数据为最新版本。需要注意的是,辅助域名服务器在每次启动时,直接使用本地的备份数据文件来进行重载,而并不是每次启动都经历一个区内传输的过程,因为这样做会浪费大量的带宽。通常,我们指定某台机器为某个特定区的主域名(辅助域名)服务器;这是因为此台机器可能同时保存几个区的数据,并且只是某些区的主域名服务器,而是另外一些区的辅助域名服务器。因此,说某台服务器是主域名服务器或辅助域名服务器是没有意义的。6.1.7 域名解析(正向解析)不论客户何时向域名服务器发出一个查询,服务器都要给出一个响应。也就是说,域名服务器负责从域名空间中检索数据,它不但要给出有关它负责的区的数据,而且还要能通过对域名空间的搜索来找到它不负责管理的区的数据。这一过程通常称为域名解析。由于域名空间的倒树状结构,所以域名服务器只需要知道全域名就可以找到树中任何一点的路径;先查根域名服务器的名字和IP地址。因此,每个域名服务器都必须维护一个指向根服务器的指针;而根域名服务器必须保存所有顶级域的数据。一旦根域名服务器收到查询,至少可以提供管理该域名所在顶级域的域名服务器的名字与地址。而后,顶级域名服务器可提供管理该域名所在第二层域的域名服务器的列表。每一次域名服务器的查询不是得到一个更加靠近的信息,便是得到了答案。下面我们来举例说明。当客户需要获得域名为“”的主机的IP地址时,该客户程序首先与本地的域名服务器联系,将域名交给其解析。如果本地的域名服务器中没有该域名的信息,则进行如图6-3所示的查询过程。地址是什么?根服务器 向edu域查询地址是什么netcomeduedu服务器解析过程stanford向查找地址是什么服务器器anchorphcsee 向查询地址是什么服务器whuyjewel地址是图6-3 域名解析过程从图6-3可以看出,本地域名服务器首先向根域名服务器发出一个查询请求。根服务器从主机名判断出该机属于edu域,因此,它用edu域的服务器的地址列表作为源服务器的响应。源服务器向列表中的一个服务器发出查询,此时edu域名服务器判断出请求的地址属于stanford子域,指示源服务器与stanford子域中的服务器联系,最终指示源服务器向子域的服务器寻求答案。一般而言,域名的解析分为本域解析和跨域解析两种;当实施跨域解析时,一般本地的域名服务器会直接向根域名服务器发出查询,这样的操作流程会保证比较高的查询效率。6.1.8 域名的反向解析在域名服务中,很多情况下,还需要使用到域名的反向解析,即将IP地址映射为域名。例如在安全方面,域名的反向解析扮演着十分重要的角色。在一些远程服务中,例如rlogin服务,只有具有特定权限的主机才能够具有访问的权利。支持这种服务的主机通常将允许访问自己的主机域名存放在特定的文件中(一般为.rhosts文件),而并不存放信任主机的IP地址。收到远程服务的请求后,有安全要求的服务器就会向域名服务器发出询问,将IP地址转化为主机域名,以确定该远程主机是否允许访问本服务器。(需要注意的是,主机之间通信传送的是IP地址。)为了完成相应的反向解析过程,需要使用到另外一个概念,即反向域 ,通过它来将一个IP地址解析为相应的全域名。这里的域的结构图见图6-4。图6-4 反向域的结构图.是为响应反向解析请求所提供的一种非常有效的工作机制。在图6-4中,我们可以看到反向域使用一个IP地址的第一个字节值来代表一个子域。这样根域就被划分为256个子域,每个子域代表该字节的一个可能值(0255)。同样的道理,又可以将每一个子域进一步划分为256个子域,每一个子域对应IP地址的第二个字节的可能值(0255)。根据这种方法,可以对每个子域继续进行划分,直到全部的地址空间都在反向域中表示出来。正是由于反向域的存在,所以一个域名服务器实际上要至少负责管理两个域,即本地域和相应的反向域。例如,对于Abc公司,如果加入Internet,它所获得的管理域将包括两个:域和反向域。如果Abc公司所获得的IP地址为C类地址,则它的域名服务器将负责管理反向域51.34.199. 。需要注意的是,反向域中IP地址的各字节的顺序,与正向的IP地址顺序是刚好相反的。这与我们前面讨论的反向域的划分方法是一致的。域名的反向解析过程如下:例如一个服务器从地址为4的主机上收到远程登陆请求,接收的服务器将向本地的域名服务器发出一个查询请求以确认源主机的身份。本地域名服务器将从199..开始,顺着树向下,直到到达最后的目标99.,然后取得相应的主机域名(例如为)。最后,该主机域名将传回到远程访问服务器,以确认远程主机是否可以访问。6.1.9 域名的最新进展随着Internet的日益普及,域名作为联网单位在Internet上的名称,越来越引起人们的重视,其商业价值也越来越大。域名恶意抢注之风盛行于世,我国不少企业也深受其害。前一段时间许多媒体报道过境外不法机构和个人,以敲诈为目的,抢注了我国知名企业的域名,由于抢注方和域名注册管理机构都在国外,我们的企业要想申诉并夺回域名困难重重。域名问题引起了国际社会的普遍关注,为了加强域名的管理、缓解域名资源的紧张状况,成立了Internet国际特别委员会(IAHC),它是一个联合组织,除了与Internet有关的一些组织参加外,如Internet协会(ISOC)、Internet分址机构(IANA)等,同时由于域名注册过程中出现的许多问题都与知识产权有关,世界知识产权组织(WIPO)也被邀请参加了这个联合组织。IAHC成立以后,致力于解决域名注册中出现的诸多问题。经过广泛磋商,在98年2月4日IAHC公布了一个报告,主要包括下面一些内容:将顶级域名(TLD)定义为三类:国家顶级域名(nTLD),国家顶级域名的代码由ISO3166规定,比如.cn代表中国、.jp代表日本。国际顶级域名(iTLD),即.int,国际联盟、国际组织可以在.int下注册,比如世界知识产权组织的域名为:。通用顶级域名(gTLD),根据94年3月公布的RFC1591规定,通用顶级域名是.com(公司企业)、.net(网络服务机构)、.org(非赢利性组织)、.edu(教育机构)、.gov(政府部门)、.mil(军事部门)。由于历史原因IAHC认为.edu、.gov、.mil是特殊域名,作为美国专用。另外IAHC又新增加了七个通用顶级域名,这七个新增的通用顶级域名是:.firm(公司企业)、.store(商店)、.web(突出WWW活动的单位)、.arts(突出文化、娱乐活动的单位)、.rec(突出消遣、娱乐活动的单位)、.info(提供信息服务的单位)、.nom(个人)。对新注册域名增加了60天的争议期,争议期后域名才生效。对在域名注册中出现的有关商标和其他知识产权的争议由世界知识产权组织负责仲裁和调停。IAHC提出,成立登记者委员会(CORE)、通用顶级域政策监督委员会(POC)、通用顶级域政策顾问机构(PAB)、域名管理仲裁委员会(ACP)等机构,以Internet域名系统通用顶级域谅解备忘录(“gTLD-MoU”)和Internet登记者委员会谅解备忘录(“CORE-MoU”)为依据,管理新增的七个通用顶级域名。CNNIC作为中国互联网络域名的运行管理机构,为了加入CORE,成为新增国际通用顶级域名注册机构,积极与国际Internet组织机构进行协商,于98年10月7日正式成为CORE的成员,获得受理新增国际通用顶级域名注册申请的权利。这样,国内的机构想注册新增的七个国际通用顶级域名在CNNIC就能办理,如果出现域名争端在国内就能解决。这对方便我国互联网络用户注册国际通用顶级域名,促进我国互联网络的发展,具有十分重要的意义。目前,国际上这七个通用顶级域名尚未开始注册,CNNIC也正在积极开发注册系统,预计99年初将开始受理注册申请。6.2 域名服务器的配置6.2.1 域名服务器客户端的配置我们已经知道,域名服务是基于Client/Server(客户机/服务器)的结构。在UNIX系统中,域名服务(DNS)是由BIND(Berkeley Internet Name Domain)软件实现的。BIND是一个客户/服务器系统,客户方面称为转换程序(resolver),它产生域名信息的查询,将这类信息发送服务器,DNS服务器软件回答转移程序的查询。BIND的服务器方面是一个称为named的守护程序。在域名服务的客户端,需要做的工作是非常简单的,仅仅需要运行一个转换程序,不需要运行域名服务器。相应的配置工作也十分简单,只需要配置/etc/resolv.conf文件。需要注意的是,在域名服务器端也需要设定这个文件,从而使得该服务器可以以客户机的模式去访问其他域名服务器。resolv.conf具有以下主要功能:定义缺省的域名,用关键字domain来定义,如:domain .域名搜索列表,用关键字search来定义,如:search .指定解析服务的次序(如:BIND、NIS、Local)。(即gethostbyname()、gethostbyaddr()所用的解析方法),缺省的解析服务次序是NIS、BIND、Local。用关键字hostresorder来定义,如:hostresorder bind local此时本地的客户机将首先通过BIND来进行域名解析,如果没有进行域名服务的配置,则系统会通过local的方式进行解析。指定一个或多个IP地址/网络掩码对,如果没有给定掩码值,则使用缺省掩码值。使用关键字sortlist来定义,如:sortlist/列出域名服务器的IP地址(仅客户机需要)。用关键字nameserver来定义,最多可以定义三个。定义的次序反映了访问的次序。如:nameserver 33或者是:nameserver nameserver nameserver 33下面是一个/etc/resolv.conf文件的实际例子:nameserver 33sortlist/hostresorder bind local6.2.2 域名服务器的种类在域名服务中,域名服务器的配置是最为核心的内容。如果使用BIND软件对域名服务器进行配置,则可以将域名服务器分为三种类型:唯高速缓存服务器(Caching-only Server)、主域名服务器(Primary Name Server)和辅助域名服务器(Secondary Name Server)。我们对这三种类型的服务器做一个简单的比较:1.唯高速缓存服务器(Caching-only Server)一个唯高速缓存服务器可以运行域名服务器的守护程序,但不具有本地的域名服务器的数据库文件。它从远程域名服务器取得每次查询的结果,并将这些结果保存到本地的缓存文件中,以后当需要查询相同信息的时候,就可以从缓存中直接获得结果。查询结果保存在缓存中的时间将由数据附带的“time-to-live”(TTL)来指定,当期满后,系统会自动删除这条结果。需要注意的是,所有的域名服务器都使用缓存技术,因为这一技术大大提高了系统响应查询的速度。(也就是说,使用主或辅助域名服务器时,进行查询时首先也是访问本地缓存。)但是唯高速缓存服务器则仅仅使用这一个技术去提供所有的域名服务器信息。从唯高速缓存服务器的工作机制中,我们也不难看出,该服务器是不具备任何权威性的,因为它所提供的都是间接信息。唯高速缓存服务器可以使用转发服务器(forwarders)。转发服务器是连接了外部网络的服务器,将这些服务器的数据结合起来构成一个大型的DNS数据库。在这种模式下,唯高速缓存服务器首先向一个转发服务器提出查询请求,必要的话,后者会去查询别的服务器,以便获得数据。如果转发服务器没有响应,它将向本区的主服务器发出请求。唯高速缓存服务器的配置相对简单,只需要一个高速缓存文件即可。但最常见的配置还包括一个本地回送文件。2.主域名服务器(Primary Name Server)主域名服务器对一个或多个区的域名解析具有权威性。它从系统管理员构建的本地磁盘文件中直接加载信息,同时,主域名服务器还将定期地把数据传送给同一个区中的辅助域名服务器。主域名服务器是一种权威性的服务器,它以绝对的权威来回答域中所有的查询。当主域名服务器回答客户请求时,要为数据附带一个时间期限(由TTL指定),指定数据的有效期限。选择主服务器时,应该选择内存和磁盘空间都比较大的计算机。同时一台计算机可以作为某一个区的主服务器,同时可以充当另外几个域的辅助域名服务器。配置主域名服务器需要一整套的文件,这些文件将在后续章节中详细讨论。主域名服务器将通过引导文件/etc/named.boot来确认自己所服务的区以及数据保存在哪些区文件中。3.辅助域名服务器(Secondary Name Server)辅助域名服务器可以从主域名服务器中获取一整套的域信息。所有的信息都是从主域名服务器中得到的,并将这些数据备份在本地的磁盘文件中。辅助域名服务器将在主服务器不能正常工作的情况下,起到备份的作用,从而提高了整套系统的可靠性。它将定期地对服务器上的数据进行更新(也即进行区文件的转移),从而保持与主域名服务器的一致性。在辅助域名服务器上由于保持了域的完整信息,因此也可以权威地回答域中客户机的查询。配置辅助域名服务器不需要建立本地的区文件,可以从主域名服务器中进行下载。但是高速缓存文件和回送文件仍然是需要包括的。需要注意的是,主域名服务器和辅助域名服务器都可以借助根域名服务器(Root Servers)来获取有关其他区的信息。6.2.3 域名服务器的配置方法有关上述三种域名服务器在具体进行配置时所需要的文件可以参考表6-1。(其中也包含了客户机的配置信息。)表6-1 不同域名服务器的配置文件文件名存放路径主域名服务器辅助域名服务器客户机Named.boot/etc要要不要Named.local/etc/named要要不要Named.hosts/etc/named要不要不要Named.rev/etc/named要不要不要Named.ca/etc/named要要不要Resolv.conf/etc要要要注意:不同的UNIX操作系统,上述文件的缺省文件名和存放路径可能是不同的。上述文件的主要功能如下: Named.boot这是DNS守护进程named在启动时查看的第一个文件;该文件设置一般的named参数,指向该服务器使用的域数据库信息的源。这类源可以是本地磁盘文件或远程服务器。Named使用此文件来决定数据库文件名及其在本主机和远程主机上的位置。 Named.ca 该文件指向根域名服务器,包含Internet的根域名服务器的名字和地址。 使用此文件中维护的信息,一个域名服务器可以与根域名服务器联系,以解析名字询问。 Named.hosts 该文件定义了域名服务器管理的域,主要负责将主机名映射为IP地址。它是域数据生成和修改并传播到网络或Internet上其他服务器的地方。 Named.rev 该文件定义了管理名字的反向域,主要负责将IP地址映射到主机名。 Named.local 用于在本地转移回送地址,负责将localhost解析成IP地址。当Named守护进程启动时,读取named.boot文件,获得服务器的类型以及初始化数据等信息。该文件保存了设置named的基本参数,同时指向该服务器使用的域数据库的信息源。该文件所使用的主要命令如下: Directory用关键字directory的行指定了Named守护进程的工作路径和数据文件的存放路径。一般是:directory etcnamed Primary用关键字primary的行来说明一个区(Zone)的主域名服务器。如:primary named.hosts第一个参数Primary说明这个服务器是第二个参数区(域)上的第一主服务器,第三个参数说明了数据文件名。 Secondary用关键字Secondary的行来说明一个区(Zone)的辅助域名服务器。如:secondary named.boot.bak第一个参数secondary说明这个服务器是第二个参数区(域)上的辅助域名服务器;网络地址用于说明区上的主域名服务器,可以有多个,用空格隔开;文件用于存放备份数据。 Cache用关键字Cache来说明一个区的高速缓存文件。所有的服务器都必须在named.boot文件中设置如下行,指明Cache文件,在服务器启动时填入域名服务器的cache中。cache . named.ca域名服务器需要根域或高层域服务器的IP,通过named.ca文件将这些信息送入域名服务器的cache中。 Forwarders用关键字forwarders来列出作为查询转发目的的服务器。例如:forwarders 24使用这条命令后,所有的域名查询工作将转到24上来进行。 xfernets用关键字xfernets来列出可以对本地域名服务器的数据库信息进行访问的机器,可以使用IP地址或域名来进行限制。该命令可以较好地保护本地域名服务系统的安全性。例如:xfernets 使用这条命令后,只有网段的主机可以对本地域名服务器的数据库信息进行访问。我们将在下面给出唯高速缓存服务器、主域名服务器以及辅助域名服务器的named.boot文件的实际例子。1主域名服务器的named.boot文件directory /var/named cache named.ca;高速缓存文件为named.hosts;此台服务器是的主域名服务器primary 111.166.IN-ADDR.ARPA named.rev;此台服务器是反向域111.166.IN-ADDR.ARPA的主服务器primary 0.0.127.IN-ADDR.ARPA localhost.rev;此台服务器是域0.0.127.IN-ADDR.ARPA(本地回送域)主服务器2辅助域名服务器的named.boot文件directory /var/named cache named.ca named.hosts ;此台服务器是域的辅助域名服务器,同时从该域的主服务器下载域 ;数据库的信息,并保存在本地文件named.hosts中secondary111.166.IN-ADDR.ARPA named.rev ;此台服务器是反向域111.166.IN-ADDR.ARPA的辅助域名服务器,同时从该反向域的主服务器;下载域数据库的信息,并保存在本地文件named.rev中primary 0.0.127.IN-ADDR.ARPA localhost.rev3唯高速缓存服务器的named.boot文件directory /var/namedcachenamed.caprimary 0.0.127.IN-ADDR.ARPA localhost.rev6.2.4 标准资源记录在上一节中讨论的基本配置命令只能适用于named.boot文件。配置named所使用的其他文件(named.hosts、named.rev、named.local和named.ca)则存放着DNS数据库的信息。所有这些文件都具有基本的格式,并使用相同记录类型去定义数据库信息。它们使用的记录都是标准资源记录(Resource Record,RR)。标准资源记录的基本格式是:namettl INtypedata name 资源记录引用的域对象名。它可以是一台单独的主机,也可以是整个域。作为name输入的字串除非是以一个点结束,否则就与当前域有关。如果该name 字段是空的,那么该记录适用于最后一个带有名字的域对象。 ttl这是一个寿命字段。它以秒为单位定义该资源记录中的信息存放在高速缓存中的时间长度。通常该字段是空字段,表示使用SOA记录中为整个区设置的缺省ttl。 IN将该记录标识为一个Internet DNS资源记录。还有一些其它类的资源,但都不被DNS使用。 type标识这是哪一类资源记录。我们将在后面的讨论中给出一些记录的类型。在type字段中你必须指定其中的一个值。 data该类型资源记录专用的信息,例如,在一个A记录中,这是一个包含实际IP 地址的字段;而在一个PTR记录中,这是一个表示主机名的字段。下面我们来具体讨论标准资源记录的类型。1 SOA(Start of Authority)资源记录SOA记录标识了DNS数据库的分区的上界。每个配置文件都必须包含一个SOA记录,以标识服务器所管理的数据库的起始地方。每个区(zone)仅有一个SOA记录,紧随在SOA记录后面的RR记录都是命名区的一部分。SOA记录的语法是: name ttl INSOAhostnameperson-in-charge(serialrefresh retry expire minimum)各部分参数的意义说明见表6-2:表6-2 SOA记录参数的说明 name域的名称ttl记录的有效时间SOA标志本资源记录的类型hostname存放本资料文件的主机的名称person-in-charge管理域的管理员的邮件地址serial本笔资料的版本号refresh辅助域名服务器多长时间更新数据库retry如果辅助域名服务器更新数据失败,多长时间重试expire如果辅助域名服务器无法从主域名服务器上更新数据,原有的资料何时失效minimum如果资源记录栏未设定ttl,则以这里提供的数据为准其中,serial参数十分关键,它用来标志当前域名数据库信息的版本号,辅助域名服务器会根据该版本号来决定是否对域名信息进行更新;因此,在修改域名数据库文件的有关参数后,一定要修改serial参数(一般将其加1)。一个SOA记录的实际例子如下:INSOA. . (1994021501 ;Serial 10800;Refresh 3 hours 3600 ;Retry 1 hour 3600000;Expire 1000 hours 86400 );Minimum 24 hours2. S(Name Server)资源记录NS记录设置一个域的域名服务器,其基本格式如下:namettlINNSname-server其中name指定本条记录所要讨论的域名,如果没有指定则使用最近设定的域名。ttl是资源记录的有效时间,如果没有指定,则与SOA记录中指定的相同。NS 标志该记录的类型,最后一项则指定域名服务器的名称。下面是一些实际的例子:.INNS . IN NS .3. A(address)资源记录A记录给出了指定主机的IP地址,其基本格式如下:namettlINAaddress其中name字段指定主机的域名,A标志该记录的类型,address字段则给出主机的IP地址。下面是一个实际的例子:. INA3 . INA04. PTR(domain name pointer) 资源记录PTR记录主要用来将IP地址反向映射为对应主机的域名,该记录主要使用于反向域文件中,其基本格式如下:special-name ttlINPTRreal-name其中,special-name是以.为结尾的反向域名(注意可以省略IP地址的网络地址部分),real-name 字段则指定主机的真实域名。需要注意的是,此处一定不能书写域名所对应的IP地址,必须写成反向域名的格式。下面是一个实际的例子:3.123INPTR . 4.123INPTR .5. CNAME(Canonical Name)资源记录该记录用来设定一台主机的别名(aliases),需要注意的是每台主机的别名也应该是互不相同的。CNAME记录在改变主机名称的时候特别有用,可以让不知道主机新名称的用户可以继续沿用以前的名称;另外对于某些有专门作用的主机,CNAME记录也十分有用。但是任何包含区名的记录(如NS记录以及后面介绍的MX记录),都不能使用别名。其基本格式如下:aliases ttlINCNAMECanonical-name一个实际的例子如下:appleINCNAMEmail-server6. MX(Mail Exchanger)资源记录MX记录列出的主机(通常也称为邮件网关,详细内容参见第六章)负责接收发送到该域的邮件,每个接收邮件的主机都应当具有一条MX记录。如果邮件传送时没有发现MX记录,邮件传送程序会假定一条MX记录,并将其preference的值设定为0。这里的preference的值的作用是:当有多条路径可将邮件从一台主机传送到另外一台主机上时,选择哪一条路径将由preference的值来决定,preference值越低,该路径的优先权越高,也就是说先尝试这条路径。其基本格式如下:name ttlINMXprefernece-valuemailer-exchanger其中preference-value指定路径的优先值,而mailer-exchanger则指定邮件转发的服务器。一个具体的实例如下:*.. INMX 0 .其中*.表示域中所有的主机都使用作为邮件转发服务器。7. HINFO(Host Information)资源记录HINFO记录包含了与主机有关的数据,包括主机的硬件和操作系统。此类记录的格式如下:name ttlINHINFOHardwareOS其中Hardware表示具体硬件,OS表示操作系统,一个实际的例子如下: IN HINFO SUN SPARCstation solaris 2.3 IN HINFO SUN SPARCstation solaris 2.38. WKS(Well Known Service)资源记录WKS记录描述了在某个特定地址上由某个特定协议支持的服务。服务和端口号列表均来自文件/etc/services,每个地址的每个协议只能有一条WKS记录。其基本格式如下:name ttlINWKSaddressprotocol life-of -service一个具体的实例如下: ttlINWKS8UDP echo tftp time最后对name字段的几个特殊的资源记录字符作一个简单说明,详见表6-3。表6-3 特殊资源记录符的说明特殊资源记录符详细说明.name字段中单独一个点表示当前区name字段中单独一个表示当前起点(origin),表示整个区文件的开始()将多行数据连结在一起;表示该行为注释行*通配符,只使用于name字段,并且一般只用于MX记录使用RR记录就可以写出在配置域名服务器时所需要的主要配置文件。我们将在下一节中给出这些文件的实例。6.3 配置域名服务的应用实例设置一个具有域名机制的网络,根据每个站点在域名服务中所处的地位不同,如:主域名服务器、辅助域名服务器和客户机,同时根据所选用的不同的UNIX操作系统,其设置方法不尽相同。6.3.1 在SUN Solaris 2.3上启动named守护进程的方法 在每一个域名服务器上都要进行如下的设定,在客户机上则不需要进行如下的设定。1.修改etcnsswitch.conf文件。使下行: hosts: file变成为: hosts: dns file 2.修改etcrc2.dS72inetsvc文件。# If this machine is configured to be an Internet Domain Name# System (DNS) server,run the name daemon.# Start named prior to :route add net host,to avoid dns# gethostbyname

温馨提示

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

最新文档

评论

0/150

提交评论