资源描述
实验2DNS服务器的配置,一、实验目的二、实验工具与设备三、实验预备知识四、实验内容和步骤五、实验总结,一、实验目的,1了解DNS的基本原理。2掌握Linux下DNS服务器的安装和设置。,二、实验工具与设备,1交换机(或者集线器)一台,网线若干。2带网卡的PC若干,其中一台用于安装Linux,另一台做Web发布服务器(可以是Linux的Apache,也可以是Windows下的IIS)。3RedHatLinux9.0安装光盘一套。,三、实验预备知识,1DNS系统简介DNS(DomainNameSystem)即“域名系统”。在一个TCP/IP架构的网络(例如Internet)环境中,IP地址用于标识主机地址,DNS的主要功能是易于记忆的DomainName(域名)与人不容易记忆的IP地址进行转换。网络中执行DNS服务的主机称为DNS服务器(域名服务器)。DNS服务器除了将域名转换为IP地址外(“正向解析”),还可以将IP地址转换成域名(“逆向解析”)。,图2-1域名数据库结构的树状图,域名系统(DNS)是一种用于TCP/IP应用程序的全球分布式数据库。在Internet上的单个站点不能拥有Internet上所有的信息。每个站点(如某所大学中、某间公司)保留自己的信息数据库,并提供给Internet上的客户查询。该数据库的结构可以用反转树状图来表示,如图2-1所示。一个域(Domain)一般是指整个域名空间的一个子树。,树的最上层是根(root),用“”表示,根下面是若干个子树,又称为域(Domain)。根域下面是顶级域名,主要有com、edu、gov、org、net和mpa等。表2-1描述了这些顶级域名的含义。域名的分配和管理由国际互联网中心(InterNIC)负责。一般顶级域名分为两类,一类是表示组织性质,如com,另一类是地域性质,如cn表示中国。在顶级域名下是二级域名,通常由InterNIC授权给其他单位或组织管理,如中国的域名管理中心是CNNIC。例如,在域名中,cn是地域性的顶级域名,com是组织性的顶级域名,abc是二级域名。在二级域名还可以再设置三级域名,如,www是一个三级域名。三级域名的管理一般由二级域名的所有者负责,不再由NIC负责。,表2-1顶级域名及其含义,2hosts文件在Linux系统中,往往在/etc目录下存在一个提供DNS解析的文件hosts文件。hosts文件包括域名和IP地址的对应信息。当一台计算机需要通过域名来定位网络上另一台计算机时,往往先查看本地hosts文件。一个典型的hosts文件的格式如下:127.0.0.1loealhostlocalhostlocaldomain192.168.1.1192.168.1.2ftp,每一行为一个记录,标识一台计算机。第一列指出IP地址,如192.168.1.1;第二列开始指明该IP地址对应的计算机名。一台计算机可以设置多个名字,每个名字之间用空格分隔开。例如,都是IP地址为192.168.1.1的计算机的名字。,3DNS服务器的分类Internet上主机的域名和地址解析主要是由DNS域名服务器完成的。DNS域名空间中存在以下几种DNS服务器。根服务器:用“”表示,位于整个域名空间的最上层,主要用来管理根域和顶级域名。目前,世界上一共有13台计算机作为根服务器。,缓存(cache-only)域名服务器:域名系统中的域名服务器把非它们授权管理的远程域名信息保存在自己的缓存中。遇到域名查询时,首先查找缓存中的记录,如果找到该记录,则把结果返回给客户端;否则,按照DNS的查找规则进一步查找。缓存服务器只用来缓存DNS域的信息,没有本地的域名数据库,不管理任何域名信息。,主域名(Primaryservers)服务器:每个域必须有一个主域名服务器。该域的所有DNS数据库文件的修改都在这台服务器上进行。主域名服务器管理对其子域的授权,并且对该域中的辅助域名服务器进行周期性的更新和同步。,辅助域名(secondaryservers)服务器:每个域至少应有一个辅助域名服务器。辅助域名服务器从相应的主域名服务器获得所有域名数据库文件的副本,并对所服务的域提供和主域名服务器一样的授权信息。,转发域名服务器:是主域名服务器和辅助域名服务器的一种变形,负责所有非本地域名的非本地查询。如果在网络中存在一台转发域名服务器,则所有对于非本地域名的查询都将先转发给它,再由转发域名服务器进行域名解析。,4DNS解析过程以解析域名为例。当系统需要调用主机的资料时,发送一个查询域名的指令。(1)系统中存在一个hosts文件,可以用来解析域名。在系统中,可以定义查找域名的顺序:先查找hosts文件,还是先查找DNS服务器。一般设置先查找hosts文件,如果在hosts文件中发现记录,则直接返回结果。,(2)如果hosts文件中没有发现该记录,则把查询指令转发到系统中指定的域名服务器,进行DNS查询。(3)域名服务器在自己的缓存中查找相应的域名记录,如果存在该记录,则返回结果;否则,把这个查询指令转发到根域名服务器。,(4)在根域名服务器的记录中,根据递归查询的规则,只能返回顶级域名com,并且把能够解析com的域名服务器的地址告诉客户机。(5)客户机根据返回的信息,继续向com域名服务器发送递归请求,收到请求的、能够正确返回域名信息的域名服务器,再把相关信息返回给客户机。,(6)客户机再次向的域名服务器发送递归请求,收到请求的服务器再次进行解析;该服务器已经能够把域名完全解析到一个IP地址,并把这个IP地址返回。,5Linux下DNS服务器的设置目前,Linux系统上通用的域名解析系统软件是BIND(BerkeleyInternetNameDomain)。除此之外,Linux系统中还有两个与DNS解析有关的文件。(1)两个与DNS解析有关的文件./etc/resolv.conf文件该文件指定系统中DNS服务器的IP地址和一些相关信息。格式一般如下:,nameserver192.168.1.1nameserver192.168.1.254第一行指定未知该计算机的域时,默认属于指定的域。本实验中,如果要查询计算机www,则默认作为域的一个成员,即是一样的。第二行和第三行指定系统用于查找域名的域名服务器的IP地址。可以为系统指定多个域名服务器。当系统进行域名查询时,首先查找第一台域名服务器,如果第一台域名服务器没有响应,则查找第二台域名服务器,依此类推。,./etc/host.conf文件该文件决定进行域名解析时查找host文件和DNS服务器的顺序。一般的格式如下:orderhosts,bind,(2)bind的配置bind的主配置文件是etc/named.conf。该文件是文本文件,一般需要手工生成。在RedHatLinux9.0中,也可以在图形界面下配置,配置完后,系统生成相应的配置文件。除主配置文件外,/var/named目录下的所有文件(如named.ca、named.local等)都是DNS服务器的相关配置文件。,说明:为方便读者阅读,以下“/”后面的中文内容为编者加入的注释。.name.conf文件的配置下面是一个named.conf文件的部分内容:controlsinet127.0.0.1allowlocalhost;keysrndckey;include/etc/named.custom;include/etc/rndc.key;,zone1.168.192.in-addr.arpa/指定1.168.192.in-addr.arpa域,此域typemaster;/为的反向解析域file1.168.192.in-addr.arpa.zone;zone/指定域,并指定了本域的配置typemaster;/文件是.zonefile.zone;,带文件内容中,include/etc/named.custom和include/etc/rndc.key说明该配置文件还包含了/etc/named.custom和/etc/rndc.key两个子配置文件。文件named.custom需要用户配置,以下是该文件的部分内容:zone./定义了根域typehint;/定义服务器的类型为hintfilenamed.ca;/定义根域的配置文件为named.ca;optionsdirectory/var/named/;/定义存储DNS域名系统域名数据库文件的路径;/具体的DNS配置都在这些数据库文件中完成,根域配置文件named.ca根域配置文件设定根域的域名数据库,包含根域的13台DNS服务器信息。几乎所有系统的这个文件都是相同的,用户不需要进行修改。如果系统中没有该文件,可到ftp:/,正向域名解析数据库文件每个域都有一个对应的正向域名解析数据库文件,本实验以/var/named/下的文件.zone为例,文件.zone的格式和注释如下:$TTL86400INSOA.(2;serial28800;refresh7200;retry,604800;expire86400;ttl)NS.MX.ftpINA192.168.1.2wwwINA192.168.1.2第一行:生存时间。,第二行:一个SOA(startofauthority)记录,是每个数据库文件中必需的,“”符号是该域的替代符,表示“”域,同时,该符号也是named.conf和数据库文件的连接词。IN关键字表示网络的类型,是一个固定的关键字。SOA关键字表示这条记录是SOA记录。指定本域的域名服务器。,注意:后面要以“”结束。在域名数据库文件中,凡是出现的域名,都要以“”结尾。指明该域管理员的邮箱,这里没有用“”符号,而是以“”显示,以便与文件开始的“”符号相区别。,后面括号中的内容指定多个选项,按顺序分别是序列号、更新时间、重试时间间隔、过期时间和最小时间间隔(生存时间)。NS记录:指定本域的主域名服务器。MX记录:指定本域的邮件收发服务器。最后的两行定义具体的域名解析记录,称为A记录,定义了主机的IP地址。,反向域名解析数据库文件一个反向解析数据库文件如下(以/var/named/下的1.168.192.in-addr.arpa.zone文件为例):$TTL86400INSOA.(3;serial28800;refresh7200;retry604800;expire86400;ttl),INNS.1INPTR.2INPTR.2INPTR.SOA记录的格式和正向解析数据库文件相同。定义域名解析服务器和邮件服务器的语句格式和正向解析数据库文件的格式也相同。,PTR记录是反向解析数据库文件的特殊格式,用来定义IP地址到主机域名的映射。例如,记录“2INPTR.”定义IP地址为192.168.1.2到域名的映射。,除以上named.conf、named.ca、正向域名解析数据库文件、反向域名解析数据库文件等四个配置文件外,/etc/named目录下所有文件都是DNS的配置文件,但其余文件一般不需要手工修改。DNS的配置比较复杂,不太好理解,读者可以先完成实验,再详细对照这里的知识要点来理解。,四、实验内容和步骤,1实验环境的构建(1)DNS的几个专用名称ForwardMasterZone:主前向DNS区域,用来解析域名和IP地址的转换。ReverseMasterZone:主反序DNS区域,用来解析IP地址和域名的转换。图2-2实验网络的连接(2)将实验的设备按如图2-2所示连接好。,图2-2实验网络的连接,Web客户机:装有WindowsXP或其他操作系统的客户机(本实验采用WindowsXP),安装网页浏览器,IP地址为192.168.0.3到192.168.0.254中的任意一个,主机名任意,不重复即可。DNS服务器:安装RedHatLinux的服务器,主机名为dnsserver.mydomain(完整域名),IP地址为192.168.0.1,在本实验中充当DNS服务器。,Web服务器:用户网页发布的服务器,可以是装有Apache的Linux服务器,也可以是Windows的IIS,IP地址为192.168.0.2,并且已经发布默认网页,主机名为www.mydomain。整个实验环境构建成一个名为mydomain的虚拟域。本实验用GNOME的图形界面来完成。读者在完成本实验的基础上,可以尝试用配置文件的方法来配置。,(3)为保证实验的顺利进行,首先保证整个实验环境的网络连通性,即保证在整个实验环境中每一台计算机之间的网络是连通的,可以用ping命令来检查其连通性。2配置dnsserver服务器中的DNS服务在“系统设置”窗口中双击“服务器设置”图标,双击“域名服务”图标,打开“服务器设置”窗口,如图2-3所示。,图2-3服务器设置窗口,也可以在“主菜单”中选择“系统设置服务器设置域名服务”选项,弹出“域名服务”对话框,如图2-4所示。DNS服务器担负着“域名转换成IP”及“IP转换成域名”两种工作,对于DNS服务器来说,每一个区域的数据都有两种:前向区数据和反向区数据,分别对应域名转换成IP及IP转换成域名的两种转换。,图2-4域名服务对话框,下面对域mydomain进行DNS服务器的配置。(1)对服务器配置mydomain的前向区数据、记录域名和IP的对应关系在配置DNS服务的对话框(见图2-4)中单击“新建”按钮,弹出“选择一个区块类型”对话框,如图2-5所示。,图2-5选择一个区块类型对话框,在图2-4中选择“正向主区块(F)”选项,在“域名(D)”栏填入要添加数据的域名mydomain,单击“确定”(OK)按钮,弹出“名称到IP的翻译”对话框,如图2-6所示。,图2-6名称到IP的翻译对话框,在“主名称服务器(SOA)”栏添入“”。在记录框中已经有一个记录mydomain,该记录是一个名称服务器记录,即标注区域mydomain的域名服务器(DNS服务器)记录。单击“编辑”按钮,弹出“mydomain设置”对话框,如图2-7所示。在该对话框中可以编辑该记录完整的配置。,该对话框中包括两栏,其中上栏设置本区域指定授权的DNS服务器,下栏设置本区域中负责接收外部邮件的邮件服务器。本实验没有邮件服务器,因而下栏不填。在上栏中单击“添加(A)”按钮,弹出“名称服务器的属性”对话框,如图2-8所示。,图2-7mydomain设置对话框,图2-8名称(域名)服务器的属性对话框,填写完解析服务器dnsserver的IP地址后,单击“确定”按钮,返回“名称到IP的翻译”对话框。单击“增加(A)”按钮,分别添加主机www和dnsserver服务器域名和IP地址的对应关系,如图2-9和图2-10所示。,图2-9添加一条记录对话框(1),图2-10添加一条记录对话框(2),(2)配置mydomain服务器的反向区数据,设置IP和域名之间的关系在“域名服务”对话框(见图2-4)中单击“新建”按钮,弹出“选择一个区块类型”对话框。选择“逆向主区块(R)”选项,在“IP地址”栏填入要添加区域数据IP地址的前三部分192.168.0,如图2-11所示。完成后,单击“确定”(OK)按钮,弹出“IP到名称的翻译”对话框,如图2-12所示。,图2-11选择一个区块类型对话框,图2-12IP到名称的翻译对话框,在“名称服务器”栏中单击“增加(A)”按钮,添加DNS服务器名称。注意:要填写完整的域名,并要在域名后面加上一个点,如图2-13所示。,图2-13名称服务器的属性对话框,完成后,填写本区域IP和主机域名之间的对应关系,在图2-12所示的“逆向地址表”栏中填写IP与域名对应的记录。注意:要填写完整域名且最后要加上一个点,如图2-14和图2-15所示。,图2-14新逆向区块指针对话框(1),图2-15新逆向区块指针对话框(2),配置好的逆向区数据如图2-16所示。,图2-16配置完成的IP到名称的翻译对话框,配置完成后,保存退出,DNS服务器就配置完成了。(3)在虚拟终端的命令行输入以下命令,重新启动DNS服务器:/etc/rc.d/init.d/namedrestart,3配置客户端(1)在客户机端禁用DNS解析,如图12-17所示。(2)在客户端的IE浏览器中分别输入以下地址:http:/192.168.0.2http:/www.mydomainIE显示的内容分别如图2-18和图2-19所示。,图2-17TCP/IP属性对话框,图2-18,图2-19,由图2-18可见,Web服务器工作正常,但没有进行DNS解析,无法直接用域名www.mydomain访问Web服务器。(3)在客户机启用DNS解析,并按图2-20所示设置域和DNS服务器的IP地址。(4)输入域http:/www.mydomain,此时可以访问Web服务器,说明DNS服务器正常解析客户的域名,如图2-21所示。,图2-20,图2-21,五、实验总结,1写出本实验的实验报告。2本实验是在封闭的局域网中进行,在实际的Internet中,各级DNS互相连接,每一个DNS服务器都有完整子域的数据。在DNS服务器中有一个特殊的区域“.”,是一个缓存区,其引用文件为named.ca,包含了Internet上所有根DNS服务器的列表,这些根服务器用于初始化DNS服务器named的缓存。在ftp:/,
展开阅读全文