网络服务器搭建、配置与管理——Linux版 主编:杨云、马立新 人民邮电出版社 www.ptpedu.com.cn
项目5 配置与管理DNS服务器 项目描述:某高校组建了校园网,为了使校园网中的计算机简单快捷地访问本地网络及Internet上的资源,需要在校园网中架设DNS服务器,用来提供域名转换成IP地址的功能。 在完成该项目之前,首先应当确定网络中DNS服务器的部署环境,明确DNS服务器的各种角色及其作用。 项目目标: ● 了解DNS服务器的作用及其在网络中的重要性 ● 理解DNS的域名空间结构 ● 掌握DNS查询模式 ● 掌握DNS域名解析过程 ● 掌握常规DNS服务器的安装与配置 ● 掌握辅助DNS服务器的配置 ● 掌握子域概念及区域委派配置过程 ● 掌握转发服务器和缓存服务器的配置 ● 理解并掌握DNS客户机的配置 ● 掌握DNS服务的测试
项目5 配置与管理DNS服务器 5.1 相关知识 5.6 项目实录 5.7 练习题 5.2 项目设计与准备 5.8 实践习题 5.3 项目实施 5.4 企业DNS服务器实用案例 5.9 超级链接 5.5 DNS故障排除
5.1 相关知识 5.1.1域名空间
5.1.1域名空间 1.域和域名 2.Internet域名空间 3.区(Zone) DNS树的每个节点代表一个域,通过这些节点,对整个域名空间进行划分,成为一个层次结构。域名空间的每个域的名字通过域名进行表示。域名通常由一个完全正式域名(FQDN)标识 2.Internet域名空间 DNS根域下面是顶级域,也由Internet域名注册授权机构管理。共有3种类型的顶级域。 3.区(Zone) 区是DNS名称空间的一个连续部分,其包含了一组存储在DNS服务器上的资源记录。
4.唯高速缓存DNS服务器(Caching-only DNS server) 1.主DNS服务器(Master或Primary) 2.辅助DNS服务器(Slave或Secondary) DNS服务器分为4类。 3.转发DNS服务器 4.唯高速缓存DNS服务器(Caching-only DNS server)
5.1.3 DNS查询模式 1.递归查询 2.转寄查询(又称迭代查询)
5.1.4 域名解析过程 1.DNS域名解析的工作原理
5.1.4 域名解析过程
5.1.4 域名解析过程 2.DNS域名解析实例 3.正向解析与反向解析 (1)正向解析。正向解析是指域名到IP地址的解析过程。 5.1.4 域名解析过程 2.DNS域名解析实例 假设客户机使用电信ADSL接入Internet,电信为其分配的DNS服务器地址为210.111.110.10,域名解析过程如下。 3.正向解析与反向解析 (1)正向解析。正向解析是指域名到IP地址的解析过程。 (2)反向解析。反向解析是从IP地址到域名的解析过程。反向解析的作用为服务器的身份验证。
5.1.5 资源记录
5.1.5 资源记录 2.NS资源记录 3.A资源记录 4.PTR资源记录 5.CNAME资源记录 6.MX资源记录
5.1.6 /etc/hosts文件 hosts文件是Linux系统中一个负责IP地址与域名快速解析的文件,以ASCII格式保存在/etc目录下,文件名为“hosts”。hosts文件的格式如下: IP地址 主机名/域名 【例5-1】 假设要添加域名为www.smile.com,IP地址为192.168.0.1;www.long.com,IP地址为192.168.1.1。则可在hosts文件中添加如下记录。 192.168.0.1 www.smile.com 192.168.1.1 www.long.com
5.2 项目设计及准备 5.2.1 项目设计 为了保证校园网中的计算机能够安全可靠地通过域名访问本地网络以及Internet资源,需要在网络中部署主DNS服务器、辅助DNS服务器、缓存DNS服务器。
5.2.2 项目准备 一共需要4台计算机,其中3台是Linux计算机,1台是Windows 7计算机。 5.2.2 项目准备 一共需要4台计算机,其中3台是Linux计算机,1台是Windows 7计算机。 (1)安装Linux企业服务器版的计算机2台,用作主DNS服务器和辅助DNS服务器; (2)安装有Windows 7操作系统的计算机1台,用来部署DNS客户端; (3)安装有Linux操作系统的计算机1台,用来部署DNS客户端; (4)确定每台计算机的角色,并规划每台计算机的IP地址及计算机名。 (5)或者用VMWare虚拟机软件部署实验环境。
5.3 项目实施 任务5-1 安装DNS服务 1.认识BIND BIND是一款实现DNS服务器的开放源码软件。 BIND经历了第4版、第8版和最新的第9版,第9版修正了以前版本的许多错误,并提升了执行时的效能,BIND能够运行在当前大多数的操作系统平台之上。目前BIND软件由Internet软件联合会(Internet Software Consortium,ISC)这个非营利性机构负责开发和维护。
任务5-1 安装DNS服务 2.安装bind软件包 (1)使用yum命令安装bind服务 (光盘挂载、yum源的制作请参考项目2) [root@RHEL6 ~]# yum clean all //安装前先清除缓存 [root@rhel6 ~]# yum install bind -y
任务5-1 安装DNS服务 2.安装bind软件包 (2)安装完后再次查询,发现已安装成功。 [root@RHEL6 桌面]# rpm -qa|grep bind PackageKit-device-rebind-0.5.8-21.el6.x86_64 samba-winbind-3.6.9-151.el6.x86_64 ypbind-1.20.4-30.el6.x86_64 rpcbind-0.2.0-11.el6.x86_64 bind-9.8.2-0.17.rc1.el6.x86_64 bind-libs-9.8.2-0.17.rc1.el6.x86_64 bind-utils-9.8.2-0.17.rc1.el6.x86_64 samba-winbind-clients-3.6.9-151.el6.x86_64
任务5-2 DNS服务的启动与停止
任务5-2 DNS服务的启动与停止
任务5-2 DNS服务的启动与停止
任务5-3 配置主要名称服务器
任务5-3 配置主要名称服务器 1.主配置文件 在Red Hat Enterprise Linux 6中,BIND的主配置文件是named.conf,存放在/etc目录下,主要是用来声明域名服务器的Cache文件、正反向解析区域文件的名称及放置位置。如果要在域名服务器上设置存取限制,或者进行其他特殊设置,都必须在/etc/named.conf文件中定义。其中,Cache文件主要用来设置DNS服务器查询域名解析后的结果(域名与IP地址的对应关系);正向解析区域(Zone)文件默认存放在/var/named目录下,主要用来完成域名到IP地址的对应转换工作;反向解析区域(Reverse Zone)文件默认也存放在/var/named目录下,其作用是完成从IP地址到对应域名的转换。
任务5-3 配置主要名称服务器 named.conf配置文件分为整体和局部两个部分。
任务5-3 配置主要名称服务器 type字段指定区域的类型,对于区域的管理至关重要,一共分为6种,如表
任务5-3 配置主要名称服务器 2.从例子学起:搭建一个简单的DNS服务器 任务5-3 配置主要名称服务器 2.从例子学起:搭建一个简单的DNS服务器 授权DNS服务器管理smile.com区域,并把该区域的区域文件命名为smile.com.zone。服务器是192.168.2.2,Mail服务器是192.168.2.10,WWW服务器是192.168.2.100。本例至少需要2台Linux服务器,一台安装DNS,一台作为客户端。
任务5-3 配置主要名称服务器 (1)建立主配置文件named.conf。 [root@RHEL6 ~]# vim /etc/named.conf options { listen-on port 53 { any; }; //“127.0.0.1”改成“any” listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; //“localhost”改成“any” recursion yes; dnssec-enable no; //“yes”改成“no” dnssec-validation no; //“yes”改成“no” dnssec-lookaside auto; }; zone "." IN { //以下4行是根域设置,区域文件为/vae/named/name.ca,不可省略 type hint; file "named.ca"; zone "smile.com" { //区域名为“smile.com” type master; //区域类型为master file "smile.com.zone"; //区域解析文件为/var/named/smile.com.zone 任务5-3 配置主要名称服务器 (1)建立主配置文件named.conf。
任务5-3 配置主要名称服务器 (2)建立smile.com.zone区域文件。 任务5-3 配置主要名称服务器 (2)建立smile.com.zone区域文件。 [root@RHEL6 ~]# vim /var/named/smile.com.zone $TTL 1D @ IN SOA smile.com. root.smile.com. ( 2013120800 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum @ IN NS dns.smile.com. dns IN A 192.168.2.2 @ IN MX 5 mail.smile.com. mail IN A 192.168.2.10 www IN A 192.168.2.100 @是区域名称的简写。如果在正向解析区域文件中遇到@符号,则都可以替换成“named.conf”中声明的相关正向解析区域名称,比如smile.com,在第一行进行了声明。
任务5-3 配置主要名称服务器 (3)配置反向解析区域
任务5-3 配置主要名称服务器 ② 建立反向区域文件。 任务5-3 配置主要名称服务器 ② 建立反向区域文件。 [root@RHEL6 ~]# vim /var/named/2.168.192.in-addr.arpa.zone $TTL 86400 @ IN SOA 2.168.192.in-addr.arpa. root.smile.com.( 2013120800 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum @ IN NS dns.smile.com. 2 IN PTR dns.smile.com. @ IN MX 5 mail.smile.com. 10 IN PTR mail.smile.com. 100 IN PTR www.smile.com.
任务5-3 配置主要名称服务器
任务5-3 配置主要名称服务器
任务5-3 配置主要名称服务器 (6)在Linux客户端测试配置效果 [root@RHEL6 桌面]# vim /etc/resolv.conf nameserver 192.168.2.2 //在打开的配置文件中增加一行 [root@RHEL6 桌面]# service network restart //重启使设置有效 [root@RHEL6 桌面]# nslookup > server //查询DNS服务器地址 Default server: 192.168.2.2 Address: 192.168.2.2#53 > dns.smile.com //解析dns.smile.com Server: 192.168.2.2 Address: 192.168.2.2#53 Name: dns.smile.com Address: 192.168.2.2 > mail.smile.com //解析mail.smile.com Name: mail.smile.com Address: 192.168.2.10 > 192.168.2.100 //反向解析192.168.2.100 100.2.168.192.in-addr.arpa name = www.smile.com. >exit //退出测试 任务5-3 配置主要名称服务器 (6)在Linux客户端测试配置效果
任务5-3 配置主要名称服务器 3.区域文件与资源记录 4.SOA资源记录 SOA资源记录语法格式如下。 任务5-3 配置主要名称服务器 3.区域文件与资源记录 4.SOA资源记录 SOA资源记录语法格式如下。 区域名(当前) 记录类型 SOA 主域名服务器(FQDN) 管理员邮件地址 (序列号 刷新间隔 重试间隔 过期间隔 TTL)
任务5-3 配置主要名称服务器 SOA资源记录字段含义如下: ●主域名服务器: ●管理员: ●序列号: ●刷新间隔: ●重试间隔: 任务5-3 配置主要名称服务器 SOA资源记录字段含义如下: ●主域名服务器: ●管理员: ●序列号: ●刷新间隔: ●重试间隔: ●过期间隔: ●最小(默认)TTL:
任务5-3 配置主要名称服务器 6.NS记录 用于指定一个区域的权威DNS服务器,通过在NS资源记录中列出服务器的名字,其他主机就认为它是该区域的权威服务器。@已声明为smile.com.。 NS资源记录语法格式: 区域名 IN NS 完整主机名(FQDN) 如下所示。 @ IN NS dns.smile.com.
任务5-3 配置主要名称服务器 7.A资源记录 完整主机名(FQDN) IN A IP地址 如下所示。 任务5-3 配置主要名称服务器 7.A资源记录 A资源记录是使用最为频繁的一种,通常用于将指定的主机名称解析为它们对应的IP地址。 A资源记录语法格式: 完整主机名(FQDN) IN A IP地址 如下所示。 mail IN A 5 192.168.0.188
任务5-3 配置主要名称服务器 8.其他常用资源记录 CNAME(别名)资源记录用于为某个主机指定一个别名。 CNAME资源记录语法格式: 任务5-3 配置主要名称服务器 8.其他常用资源记录 (1)CNAME资源记录。 CNAME(别名)资源记录用于为某个主机指定一个别名。 CNAME资源记录语法格式: 别名 IN CNAME 主机名 如下所示。 www1.long.com IN CNAME www.long.com.
任务5-3 配置主要名称服务器 (2)MX资源记录。 思考:@能否换成smile.com? 任务5-3 配置主要名称服务器 (2)MX资源记录。 MX(邮件交换器)资源记录提供邮件传递信息。该记录会指定区域内的邮件服务器名称。 MX资源记录语法格式: 区域名 IN MX 优先级(数字) 邮件服务器名称(FQDN) 如下所示。 @ IN MX 5 mail.smile.com. 思考:@能否换成smile.com?
任务5-3 配置主要名称服务器 (3)PTR资源记录。 PTR(指针)资源记录。该记录与A记录相反,用于查询IP地址与主机名的对应关系。 任务5-3 配置主要名称服务器 (3)PTR资源记录。 PTR(指针)资源记录。该记录与A记录相反,用于查询IP地址与主机名的对应关系。 PTR资源记录语法格式: IP地址 IN PTR 主机名(FQDN) 如下所示。 188 IN PTR mail.smile.com.
任务5-3 配置主要名称服务器
任务5-3 配置主要名称服务器
任务5-3 配置主要名称服务器 标准根区域文件设置。
任务5-3 配置主要名称服务器 10.实现直接解析域名 任务5-3 配置主要名称服务器 10.实现直接解析域名 DNS服务器默认只能解析完全规范域名(FQDN),不能直接将域名解析成IP地址。为了方便用户访问,可以在DNS服务器的区域文件中加入下面一条特殊的A资源记录,以便支持实现直接解析域名功能。 smile.com. IN A 192.168.0.11 或者 . IN A 192.168.0.11
任务5-3 配置主要名称服务器 11.实现泛域名解析 泛域名是指一个域名下的所有主机和子域名都被解析到同一个IP地址上。 任务5-3 配置主要名称服务器 11.实现泛域名解析 泛域名是指一个域名下的所有主机和子域名都被解析到同一个IP地址上。 可以在DNS服务器的区域文件末尾加入下面一条特殊的A资源记录(符号“*”是代表任何字符的通配符),以便支持实现泛域名解析功能。 *.smile.com. IN A 192.168.0.11 或者 * IN A 192.168.0.11
任务5-4 配置常规DNS服务器实例 1.DNS服务器配置流程 主要分为以下3步。 ●建立主配置文件。 ●建立区域文件。 ●重新加载配置文件或重新启动named服务使用配置生效。 下面我们来看一个具体实例。如图示。 客户端需要获得www.smile.com这台主机所对应的IP地址,将查询请求发送给DNS服务器。 ●服务器接收到请求后,查询主配置文件named.conf,检查是否能够管理smile.com区域。而named.conf中记录着能够解析smile.com区域并提供smile.com区域文件所在路径及文件名。 ●服务器则根据named.conf文件中提供的路径和文件名找到smile.com区域所对应的配置文件,并从中找到www.smile.com主机所对应的IP地址。 ●将查询结果反馈给客户端,完成整个查询过程。
任务5-4 配置常规DNS服务器实例 2.DNS服务器配置实例 【例5-2】售销部所在域为“sales.com”,部门内有3台主机,主机名分别是computer1.sales.com(192.168.0.101),computer2.sales.com(192.168.0.102),computer3.sales.com(192.168.0.103).另有测试客户机client.sales.com(192.168.0.100)1台。现要求DNS服务器dns.sales.com(192.168.0.3)可以解析4台主机名和IP地址的对应关系。 此案例是DNS搭建的最基本配置。在搭建之前整理好设定流程。首先在服务器上建立主配置文件,设置可以解析“sales.com”区域。然后建立“sales.com”的区域文件,并在区域文件中设置SOA、NS以及A资源记录。最后配置客户端。
任务5-4 配置常规DNS服务器实例 配置主要步骤如下。 step1:修改named.conf文件的属组为named。 [root@RHEL6 桌面]# chgrp named /etc/named.conf 思考:named守护进程的默认属组是什么?为什么要将属组“root”改为“named”?在反向解析区域文件的处理也是这样吗?
任务5-4 配置常规DNS服务器实例 step2:设置named.conf文件并添加“sales.com”区域,指定正向解析区域文件名为sales.com.zone,反向解析区域文件名为3.0.168.192.zone。 “options {”中的“{”的两边需要各加一个空格。
任务5-4 配置常规DNS服务器实例 step3:建立“sales.com.zone”区域文件
[root@RHEL6]#cp -p /var/named/2. 168. 192. in-addr. arpa [root@RHEL6]#cp -p /var/named/2.168.192.in-addr.arpa.zone /var/named/3.0.168.192.zone [root@RHEL6 桌面]# ll /var/named/3.0.168.192.zone -rw-r--r--. 1 root named 435 12月 8 16:04 /var/named/3.0.168.192.zone [root@RHEL6 桌面]# vim /var/named/3.0.168.192.zone $TTL 86400 @ IN SOA 0.168.192.in-addr.arpa. root.sales.com.( 2013120800 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum @ IN NS dns.sales.com. 3 IN PTR dns.sales.com. 101 IN PTR computer1.sales.com. 102 IN PTR computer2.sales.com. 103 IN PTR computer3.sales.com. 100 IN PTR client.sales.com. [root@RHEL6 桌面]# named-checkzone 0.168.192.in-addr.arpa /var/named/3.0.168.192.zone zone 0.168.192.in-addr.arpa/IN: loaded serial 2013120800 OK 任务5-4 配置常规DNS服务器实例 step4:建立“3.0.168.192.zone”区域文件,并修改文件的属组为named。内容修改如图
任务5-4 配置常规DNS服务器实例 step4:设置正反向解析区域的区域文件的属组为named并重启服务。(红字部分可以不用设置了,为什么?)
任务5-4 配置常规DNS服务器实例 step5:测试结果如图
任务5-5 配置辅助DNS服务器 1.辅助域名服务器 DNS划分若干区域进行管理,每个区域由一个或多个域名服务器负责解析。对于存在多个域名服务器的区域,必须选择一台主域名服务器(master),保存并管理整个区域的信息,其他服务器称为辅助域名服务器(slave)。 管理区域时,使用辅助域名服务器有如下几点好处。 (1)辅助DNS服务器提供区域冗余,能够在该区域的主服务器停止响应时为客户端解析该区域的DNS名称。 (2)创建辅助DNS服务器可以减少DNS网络通信量。采用分布式结构,在低速广域网链路中添加DNS服务器能有效地管理和减少网络通信量。 (3)辅助服务器可以用于减少区域的主服务器的负载。
任务5-5 配置辅助DNS服务器 2.区域传输 为了保证DNS数据相同,所有服务器必须进行数据同步,辅助域名服务器从主域名服务器获得区域副本,这个过程称为区域传输。区域传输存在两种方式:完全区域传输(AXFR)和增量区域传输(IXFR)。 满足发生区域传输的条件时,辅助域名服务器向主服务器发送查询请求,更新其区域文件。
任务5-5 配置辅助DNS服务器
任务5-5 配置辅助DNS服务器 3.配置辅助域名服务器 【例5-3】主域名服务器的IP地址是192.168.0.3,辅助域名服务器的地址是192.168.0.200,区域是“sales.com”,两台主机分别是computer1.sales.com(192.168.0.101)、computer2.sales.com(192.168.0.102)。测试客户端是client2.sales.com(192.168.0.100)。请给出配置过程。 (1)配置主域名服务器。 在服务器192.168.0.3上修改主配置文件named.conf添加smile.com区域。 [root@RHEL6r ~]# vim /etc/named.conf options { directory "/var/named"; }; zone "." { type hint; file "name.ca"; } zone "smile.com" { type master; file "smile.com.zone"; zone "0.168.192.in-addr.arpa" { type master; file "3.0.168.192.zone";
任务5-5 配置辅助DNS服务器 (2)创建正向解析区域文件smile.com.zone。
任务5-5 配置辅助DNS服务器 (3)创建反向解析区域文件3.0.168.192.zone。
任务5-5 配置辅助DNS服务器 (4)配置辅助域名服务器。 在服务器192.168.0.200上修改主配置文件named.conf添加smile.com区域。
任务5-5 配置辅助DNS服务器 (5)数据同步测试。 [root@RHEL6~]# tail /var/log/messages 查看辅助域名服务器系统日志,通过ls命令查看辅助域名服务器/var/named/slaves目录,区域文件smile.com.zone复制完毕。 [root@server2 ~]# ll /var/named/slaves/ 建议配置区域复制时关闭Selinux功能,否则区域数据可能无法复制。如何关闭呢?
任务5-5 配置辅助DNS服务器 (5)在客户端测试辅助DNS服务器 [root@localhost ~]# nslookup > server Default server: 192.168.0.200 Address: 192.168.0.200#53 > computer1.sales.com Server: 192.168.0.200 Address: 192.168.0.200#53 Name: computer1.sales.com Address: 192.168.0.101 > dns.sales.com Name: dns.sales.com Address: 192.168.0.3 > 192.168.0.102 102.0.168.192.in-addr.arpa name = computer2.sales.com. 任务5-5 配置辅助DNS服务器 (5)在客户端测试辅助DNS服务器 将客户端计算机的首要DNS服务器地址设为192.168.0.200。然后利用nslookup测试成功。
任务5-6 建立子域并进行区域委派 1.子域应用环境 2.管理子域 如果根据需要,决定添加子域,可以有两种方法进行子域的管理。 任务5-6 建立子域并进行区域委派 1.子域应用环境 当要为一个域附加子域时,请检查是否属于以下3种情况。 2.管理子域 如果根据需要,决定添加子域,可以有两种方法进行子域的管理。 (1)区域委派。 (2)虚拟子域。 3.配置区域委派 【例5-4】 公司提供虚拟主机服务,所有主机后缀域名为sales.com。随着虚拟主机注册量大幅增加,DNS查询速度明显变慢,并且域名的管理维护工作非常困难。
任务5-6 建立子域并进行区域委派 3.配置区域委派 任务5-6 建立子域并进行区域委派 3.配置区域委派 【例5-4】 公司提供虚拟主机服务,所有主机后缀域名为sales.com。随着虚拟主机注册量大幅增加,DNS查询速度明显变慢,并且域名的管理维护工作非常困难。
任务5-6 建立子域并进行区域委派 (1)父域设置区域委派。(2)添加sales.com区域文件。 任务5-6 建立子域并进行区域委派 (1)父域设置区域委派。(2)添加sales.com区域文件。 ① 指定委派区域test.sales.com管理工作由域名服务器dns1.test.sales.com负责。 ② 添加dns1.test.sales.com的A记录信息,定位子域test.sales.com的权威服务器。
任务5-6 建立子域并进行区域委派 (3)在父域服务器上添加sales.com反向区域文件。
任务5-6 建立子域并进行区域委派 (4)在子域服务器192.168.0.200上进行子域设置。编辑/etc/named.conf并添加test.sales.com区域记录。
任务5-6 建立子域并进行区域委派 (5)在子域服务器192.168.0.200上进行子域设置,添加test.sales.com域的正向解析区域文件。 computer1 IN A 192.168.0.101 //为方便后面测试,增加一条A记录
任务5-6 建立子域并进行区域委派 (6)在子域服务器192.168.0.200上进行子域设置,添加test.sales.com域的反向解析区域文件 。 后面要关闭防火墙,设置主配置文件和区域文件的属组为named,然后重启DNS服务。
任务5-6 建立子域并进行区域委派
任务5-7 配置转发服务器 按照转发类型的区别,转发服务器可以分为以下两种类型。 (1)完全转发服务器。 任务5-7 配置转发服务器 按照转发类型的区别,转发服务器可以分为以下两种类型。 (1)完全转发服务器。 DNS服务器配置为完全转发会将所有区域的DNS查询请求发送到其他DNS服务器。可以通过设置named.conf文件的options字段实现该功能。
任务5-7 配置转发服务器 (2)条件转发服务器。 任务5-7 配置转发服务器 (2)条件转发服务器。 该服务器类型只能转发指定域的DNS查询请求,需要修改named.conf文件并添加转发区域的设置。 【例5-6】 对域smile.com设置转发服务器192.168.0.198和192.168.0.199。
任务5-7 配置转发服务器 设置转发服务器的注意事项如下: ● 转发服务器的查询模式必须允许递归查询,否则无法正确完成转发。 任务5-7 配置转发服务器 设置转发服务器的注意事项如下: ● 转发服务器的查询模式必须允许递归查询,否则无法正确完成转发。 ●转发服务器列表如果为多个DNS服务器则会依次为尝试,直到获得查询信息为止。 ●配置区域委派时如果使用权转发服务器,有可能会产生区域引用的错误。 搭建转发服务器需要掌握以下操作技巧: ① 转发列表配置精简。 ② 避免链接转发器。 ③ 减少转发器负荷。 ④ 避免转发器配置错误。
任务5-8 配置缓存服务器(Caching-only Name Server) 【例5-7】 公司网络中为了提高客户端访问外部WEB站点的速度并减少网络流量需要在内部建立缓存服务器。 缓存服务器不需要建立独立的区域,可以直接对named.conf文件进行设置,实现缓存的功能。
任务5-9 配置DNS客户端 1.RHEL6客户端配置 2.Windows客户端配置 RHEL 6中设置DNS客户端比较简单,直接编辑/etc/resolv.conf文件,然后使用nameserver参数来指定DNS服务器的IP地址。 [root@server ~]# vim /etc/resolv.conf nameserver 192.168.0.3 nameserver 192.168.0.100 2.Windows客户端配置 在网上邻居属性对话框中,单击“Internet协议(TCP/IP)”的属性按钮,在出现的“Internet协议(TCP/IP)属性”对话框中,将分别设置首选DNS服务器和备用DNS服务器地址即可。
5.4 企业DNS服务器实用案例 5.4.1 企业环境与需求
5.4.2 需求分析 单纯去配置2个区域并不困难。但是实际环境要求可以完成内网所有域的正/反向解析,所以我们还需要在主配置文件中建立这2个域的反向区域,并建立这些反向区域所对应的区域文件。反向区域文件中会用到PTR记录。如果要求所有员工均可以访问外网地址,我们还需要设置根区域,并建立根区域所对应的区域文件,这样才可以访问外网地址。
5.4.3 解决方案 1.下载并安装named.ca 2.编辑主配置文件,添加根服务器信息 5.4.3 解决方案 1.下载并安装named.ca 下载ftp://rs.internic.net/domain/named.root,这是域名解析根服务器的最新版本。下载完毕后,将该文件改名为named.ca,然后复制到“/var/named”下。 2.编辑主配置文件,添加根服务器信息
5.4.3 解决方案 3.添加smile.com和long.com域信息
5.4.3 解决方案 4.将/etc/named.conf属组由root改为named 5.4.3 解决方案 4.将/etc/named.conf属组由root改为named [root@server ~]# cd /etc [root@server ~]# chgrp named named.conf 5.建立2个区域所对应的区域文件,并更改属组为named [root@server ~]# touch /var/named/smile.com.zone [root@server ~]# chgrp named /var/named/smile.com.zone [root@server ~]# touch /var/named/long.com.zone [root@server ~]# chgrp named /var/named/long.com.zone
(1)配置“smile.com”正向解析区域。 5.4.3 解决方案 6.配置区域文件并添加相应的资源记录 (1)配置“smile.com”正向解析区域。
5.4.3 解决方案 (2)配置“smile.com”反向解析区域。
5.4.3 解决方案 (3)配置“long.com”正向解析区域文件。
5.4.3 解决方案 (4)配置“long.com”反向解析区域文件。
5.4.3 解决方案 (5)实现负载均衡功能。我们的FTP服务器本来的IP地址是192.168.0.2,但由于性能有限,不能满足客户端大流量的并发访问,所以新添加了两台服务器192.168.0.12和192.168.0.13,采用DNS服务器的负载均衡功能来提供更加可靠的FTP功能。 在DNS服务器的正向解析区域主配置文件中,添加如下信息: ftp IN A 192.168.0.2 ftp IN A 192.168.0.12 ftp IN A 192.168.0.13 (6)DNS测试。
5.5 DNS故障排除 5.5.1 使用工具排除DNS服务器配置 1.nslookup nslookup支持两种模式:非交互式和交互式模式。 (1)非交互式模式。 非交互式模式仅仅可以查询主机和域名信息。在命令行下直接输入nslookup命令,查询域名信息。 命令格式: nslookup 域名或IP地址 注意:通常访问互联网时,输入的网址实际上对应着互联网上的一台主机。
5.5.1 使用工具排除DNS服务器配置 (2)交互模式。 交互模式允许用户通过域名服务器查询主机和域名信息或者显示一个域的主机列表。用户可以按照需要,输入指令进行交互式的操作。 交互模式下,nslookup可以自由查询主机或者域名信息。下面举例说明nslookup命令的使用方法。 ① 运行nslookup命令。 [root@server ~]# nslookup ② 正向查询,查询域名www.jnrp.cn所对应的IP地址。 > www.jnrp.cn Server: 192.168.1.2 Address: 192.168.1.2#53 Name: www.jnrp.cn Address: 192.168.0.5
5.5.1 使用工具排除DNS服务器配置 ④ 显示当前设置的所有值。 ③ 反向查询,查询IP地址192.168.1.2所对应的域名。
5.5.1 使用工具排除DNS服务器配置 ⑤ 查询jnrp.cn域的NS资源记录配置。
5.5.1 使用工具排除DNS服务器配置 2.dig命令 dig(domain information groper)是一个灵活的命令行方式的域名查询工具,常用于从域名服务器获取特定的信息。例如,通过dig命令查看域名www.jnrp.cn的信息。
5.5.1 使用工具排除DNS服务器配置
5.5.1 使用工具排除DNS服务器配置 3.host命令 host命令用来做简单的主机名的信息查询,在缺省情况下,host只在主机名和IP地址之间进行转换。下面是一些常见的host命令的使用方法。 (1)正向查询主机地址。 [root@server ~]# host dns.jnrp.cn (2)反向查询IP地址对应的域名。 [root@server ~]# host 192.168.22.98
5.5.1 使用工具排除DNS服务器配置 (3)查询不同类型的资源记录配置,-t参数后可以为SOA、MX、CNAME、A、PTR。 [root@server ~]# host -t NS jnrp.cn (4)列出整个jnrp.cn域的信息。 [root@server ~]# host -l jnrp.cn 192.168.1.2 (5)列出与指定的主机资源记录相关的详细信息。 [root@server ~]# host -a computer.jnrp.cn
5.5.1 使用工具排除DNS服务器配置 4.查看启动信息 5.查看端口 service named restart,如果named服务无法正常启动,可以查看提示信息,根据提示信息更改配置文件。 5.查看端口 如果服务正常工作,则会开启TCP和UDP的53端口,可以使用netstat -an命令检测53端口是否正常工作。 netstat -an|grep 53
5.5.2 防火墙及SELinux对DNS服务器的影响 1.iptabels 如果使用iptables防火墙,注意打开53端口
5.5.3 防火墙及SELinux对DNS服务器的影响 SELinux(增强安全性的Linux)是美国安全部的一个研发项目,其目的在于增强开发代码的Linux内核,以提供更强的保护措施,防止一些关于安全方面的应用程序走弯路并且减轻恶意软件带来的灾难。安装配置BIND DNS服务器时候应先关闭SELinux。 使用命令行方式,编辑修改/etc/sysconfig/selinux配置文件: SELINUX=0 重新启动后该配置生效。
5.5.4 检查DNS服务器配置中的常见错误 ● 配置文件名写错。在这种情况下,运行nslookup命令不会出现命令提示符“>”。 ● 主机域名后面没有小点“.”,这是最常犯的错误。 ● /etc/resolv.conf文件中的域名服务器的IP地址不正确。在这种情况下,nslookup命令不出现命令提示符。 ● 回送地址的数据库文件有问题。同样nslookup命令不出现命令提示符。 ● 在/etc/named.conf文件中的zone区域声明中定义的文件名与/var/named目录下的区域数据库文件名不一致。
5.8 实践习题