您好,欢迎访问三七文档
域名服务在前面几章中我们学习了IP地址管理和文件服务管理,在对服务器主机进行访问时都是使用IP地址,。而在实际的网络应用中,通常是使用域名访问服务器主机的,本章将学习网络中域名服务器的配置与管理。在网络应用系统中,DNS服务器为用户提供了主机名和IP地址的解析服务。在局域网内部,通过构建DNS服务器,可以使用户使用域名访问局域网中的每一台主机。在互联网中,通过DNS可以使全世界所有的网络用户使用域名访问各种类型的主机,如Web服务器,Mail服务器等。BIND(BerkeleyInternetNameDomain)是著名的开源服务器软件,1984年在UNIX系统上开发实现,1985年正式命名为BIND。BIND可运行在大多数的UNIX/Linux系统中,成为事实上的标准。世界上大多数DNS服务器主机都使用BIND服务器提供域名解析服务。15.1DNS基础人们在使用网络的过程中,每一刻都在享受着DNS服务器提供的服务,如使用IE浏览网页等。15.1.1DNS作用用户在使用网络过程中,通常是通过域名访问服务器的,例如浏览网易的首页需要在IE的地址栏中输入,而浏览器程序在访问网易的服务器时是使用IP地址进行访问的,因此浏览器程序就需要通过向DNS服务器查询来将域名地址再进行访问。DNS服务器的主要作用就是为所有网络程序提供主机域名与IP地址的相互转换,包括以下两个方面的转换功能:将主机名称(域名)转换为对应的IP地址,称为正向解析。域名的正向解析也是DNS服务器最常用的功能。将主机的IP地址转换为对应的域名,称为反向解析。域名的反向解析不常用,确是DNS服务器不可或缺的功能,很多网络服务会将域名的反向解析作为访问控制策略的一部分,没有配置正确的反向解析记录有可能造成部分网络服务不可用。从上面的功能描述可以看出,DNS服务器的功能相对其他网络服务器比较简单,但却是其他网络服务器正常使用的基础和保障,因此,DNS服务对所有的网络服务都具有重要的辅助作用。15.1.2DNS结构和作用机制在整个互联网的应用中,所有的DNS的集合可以看作是一个大的分布式数据库,这个分布式数据可采用倒置的树形结构,全世界的域名系统具有唯一的“根”,DNS根服务器使用“.”表示。DNS数的每个节点代表一个域,通过这些节点,对整个域名空间进行划分,成为一个第十五章层析结构。域名空间的每个域的名字,通过域名表示。域名通常由一个完全合格域名(FQDN)标识。FQDN能准确表示出其相对于DNS域根的位置,也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用“.”分隔,对于DNS域microsoft来说,其完全合格域名(FQDN)为microsoft.com。根(.)服务器是所有主机域名解析的源头。“.cn.”服务器负责解析所有以“cn”结尾的域名的解析。“com.cn.”服务器负责所有以com.cn结尾的域名的解析。“sina.com.cn.”服务器是新浪公司负责维护的DNS服务器,用于对sina.com.cn域中所有的主机进行域名解析。因此能够解析主机地址。在DNS的域名系统中,使用“.”在FQDN中进行域和子域之间的分隔com.cn是“.cn”的子域。sina.com.cn是com.cn的子域。Internet域名空间进行了层次的划分。由树根到树枝,也就是从DNS根到下面的节点,按照不同的层次,进行了统一的命名。域名空间最顶层,即DNS的根,称为根域(root)。根域的下一层为顶级域或一级域。其下层为二级域,再下层为二级域的子域,按照需要进行规划,可以为多级,二级域名开始,个人和组织可以申请。整个域名空间由最顶层到下层,可以分为:根域、顶级域、二级域、子域。并且域中能够包含主机和子域。主机的FQDN从最下层到最顶层反写。Internet域名空间的最顶层是根域(root),其记录着Internet的重要DNS信息,由Internet域名注册授权机构管理,该机构把域名空间各部分的管理责任分配给连接到Internet的各个组织。DNS根域下面是顶级域,也是由Internet域名注册授权机构管理。共有3种类型的顶级域:组织域:采用3个字符的代号,表示DNS域中所包含的组织的主要功能或活动。如商业机构组织是com,教育组织机构是edu等。国家或地区域:采用2个字符的代号,如cn为中国,kr为韩国,us为美国。反向域:这个是特殊域,名字为in-addr.arpa,用于将IP地址映射到域名。由于美国是互联网最早的使用者,因此美国的各种机构会直接使用以上域名而很少加国家域名“.us”,而其他国家的机构在使用域名时都需要在本国的子域中进行注册,如域名后缀“.com.cn”代表中国公司,域名后缀“.edu.cn”代表中国的教育机构等。15.2使用BIND构建DNS服务器15.2.1DNS查询原理及流程1、DNS相关概念DNS服务器运行DNS服务器程序的计算机,存储DNS数据库信息。DNS服务器会尝试解析客户机的查询请求。在解答查询时,如果DNS服务器能够提供所请求的信息,就直接回应解析结果,如果该DNS服务器没有相应的域名信息,则为客户机提供另一个能帮助解析查询的服务器地址,如果以上两种方法均失败,则回应客户机没有所请求的信息。DNS缓存DNS服务器在解析客户机请求时,如果本地没有该DNS信息,则可以会询问其他DNS服务器,当其他域名服务器返回查询结果时,该DNS服务器会将结果记录在本地的缓存中,成为DNS缓存。当下一次客户机提交相同请求时,DNS服务器能够直接使用缓存中的DNS信息进行解析。资源记录DNS服务器的信息数据,按照分类进行存储,能够解析客户端的DNS请求。区域文件包含区域资源记录的文件,选择DNS服务器为授权服务器,管理该区域。在大部分DNS实现中,使用文本文件实现区域文件。2、递归查询和迭代查询递归查询:递归查询是一种DNS服务器的查询模式,在该模式下DNS服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果DNS服务器本地没有存储查询的DNS信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。迭代查询DNS服务器另外一种查询方式为迭代查询,DNS服务器会向客户机提供其他能够解析查询请求的DNS服务器地址,当客户机发送查询请求时,DNS服务器并不直接回复查询结果,而是根据另一台DNS服务器地址,向这台DNS服务器提交请求,依次循环直到返回查询的结果。3、正向解析和反向解析正向解析正向解析是指域名到IP地址的解析过程。反向解析反向解析是从IP地址到域名的解析过程,作为为服务器的身份验证。4、资源记录为了将名字解析为IP地址,服务器查询他们的区域文件(又叫DNS数据库文件)。区域文件中包含组成相关DNS域资源信息的资源记录。某些资源记录把域名解析为IP地址,另一些则把IP地址解析为域名。某些资源记录不仅包括DNS域中服务器的信息,还可以用于定义域,即指定每台服务器授权了哪些域,这些资源记录就是SOA和NS记录。15.2.2安装DNS服务BIND全称BerkeleyInternetNameDomain(伯克利因特网名称域系统)。BIND主要有三个版本:BIND4,BIND8,BIND9。BIND8融合了许多提高效率、稳定性和安全性的技术,而BIND9增加了一些超前的理念:IPv6的支持,公开密钥加密,多处理器支持,增量区域传输等等。1、DNS所需的软件bind-9.3.6-4.P1.el5.i386.rpm提供了域名服务的主要程序及相关文件,安装DNS服务器必须安装。bind-utils-9.3.6-4.P1.el5.i386.rpm提供了对DNS服务器的测试工具程序(如nslookup、dig等)bind-chroot-9.3.6-4.P1.el5.i386.rpm为bind提供一个伪装的根目录以增强安全性(将“/var/named/chroot/”文件夹作为BIND的根目录)caching-nameserver-9.3.3-7.el5.i386.rpm为配置BIND作为缓存域名服务器提供必要的默认配置文件,这些文件在配置主、从域名服务器时也可以作为参考2、软件包的安装系统默认安装的相关软件包:使用yum工具进行安装,yum的配置:修改/etc/yum.repos.d/rhel-debuginfo.repo内容为:然后进行软件的安装:安装后查询软件包是否正确安装:3、DNS服务器的配置文件BIND服务器的主配置文件是named.conf,文件默认不存在,需要手工建立或者从样例文件复制而来,样例文件是/etc/named.caching-nameserver.conf,由于安装了bind-chroot软件包,构造了一个虚假的目录,实际上上述样例文件只是一个链接文件:真正的文件在/var/named/chroot/etc/目录中。我们进入到上述目录,并建立主配置文件:加-p选项是为了不改变文件原有的权限。我们查询此文件的有效行:directory用于设置BIND服务器的工作目录,即域名区域文件保存的目录,默认是/var/named。dump-file用于设置域名缓存文件的保存位置和文件名。以上的设置是named.conf文件中的基本的全局设置。而named.conf文件中没有对区域的具体设置,而是通过加载另一个文件来实现。type字段指定区域的类型,对于管理区域至关重要,一共分为以下几种:master:主DNS服务器:拥有区域数据文件,并对此区域提供管理数据。slave:辅助DNS服务器:拥有主DNS服务器的区域数据文件的副本,辅助DNS服务器会从主DNS服务器同步所有区域数据。stub:stub区域和slave类似,但其只复制主DNS上的NS记录而不是所有区域数据。forward:配置转发。把在本地DNS服务器解析不了的域名转发到另外的DNS服务器解析。hint:指定为根区域。4、设置named服务开机启动状态:5、DNS服务器的类型基本有3种:缓存域名服务器其主要功能是提供域名解析的缓存。该类型服务器中不包括注册域名的设置,而只对用户查询过的域名解析记录进行缓存,当用户首次进行域名查询时,缓存服务器将向其他DNS服务器进行域名查询并将查询结果保存在缓存中,缓存服务器可以大大提高常用域名的查询速度,因此特别适合在局域网内部使用。主域名服务器主域名服务器是特定区域所有信息的权威性信息源,对于某个指定区域,主域名服务器是唯一存在的。主域名服务器保存了指定域的区域文件。从域名服务器从域名服务器不进行特定域信息(区域文件)的权威设置,而是从该域的主域名服务器中获取相应的文件并进行保存。当主域名服务器的内容发生变化时,从域名服务器的内容也会进行相应的变化。从域名服务器是对主域名服务器的备份,可以有效的对主域名服务器的负载进行分担。15.2.3配置缓存域名服务器缓存域名服务器,是配置其他类型DNS服务器的基础。实例:缓存域名服务器的主机IP地址为192.168.1.2,该主机是构建主域名服务器的基础;缓存域名服务器应能够与互联网中的其他DNS服务器进行网络连接,以查询DNS客户机的域名解析请求。在局域网内部构建缓存域名服务器的主要目的是提高域名解析的速度和节约对互联网访问的出口带宽。1、安装caching-nameserver软件包该软件包在系统安装光盘自带,默认没有安装,可使用yum工具进行安装。查询安装此软件包后所安装的文件列表:能看出安装caching-nameserver软件包后,安装了DNS服务器的配置文件以及区域文件等内容。2、修改named.conf配置文件首先建立named.conf(虽然上图显示已经建立/etc/named.conf,但是在/etc/,目录下查找不到),我们复制样例文件:对named.conf文件进行修改,修改的内容(只列出被修改
本文标题:第十五章 域名服务
链接地址:https://www.777doc.com/doc-1907262 .html