M7-3 Linux系统DNS服务安装与配置_第1页
M7-3 Linux系统DNS服务安装与配置_第2页
M7-3 Linux系统DNS服务安装与配置_第3页
M7-3 Linux系统DNS服务安装与配置_第4页
M7-3 Linux系统DNS服务安装与配置_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、M7-3 Linux系统DNS服务安装与配置1.1场景描述1.1.1 学习目的主要要求学生通过该能力模块的学习,能够熟练掌握DNS服务的安装与配置能力。1.1.2 学习要求理解:DNS工作原理掌握:DNS安装掌握:主从DNS的配置掌握:DNS子域的配置1.1.3 学习重点和难点1.学习重点² 安装DNS软件² 配置DNS服务² 配置主从DNS服务² 配置DNS子域² 配置DNS服务高级选项2.学习难点² 配置DNS服务1.2 知识准备1.3.1 DNS原理当DNS客户端需要为某个应用程序查询名字时,它将联系自己的DNS服务器来解析此名

2、字。DNS客户发送的解析请求包含以下三种信息: 需要查询的域名。如果原应用程序提交的不是一个完整的FQDN,则DNS客户端加上域名后缀以构成一个完整的FQDN; 指定的查询类型。指定查询的资源记录的类型,如A记录或者MX记录等等; 指定的DNS域名类型。对于DNS客户端服务,这个类型总是指定为 Internet IN类别。 DNS客户端完整的DNS解析过程如下: 1、检查自己的本地DNS名字缓存 当DNS客户端需要解析某个FQDN时,先检查自己的本地DNS名字缓存。本地的DNS名字缓存由两部分构成: Hosts文件中的主机名到IP地址映射定义; 前一次DNS查询得到的结果,并且此结果还处于有效

3、期; 如果DNS客户端从本地缓存中获得相应结果,则DNS解析完成。2、联系自己的DNS服务器 如果DNS客户端没有在自己的本地缓存中找到对应的记录,则联系自己的DNS服务器,你必须预先配置DNS客户端所使用的DNS服务器。 当DNS服务器接收到DNS客户端的解析请求后,它先检查自己是否能够权威的答复此解析请求,即它是否管理此请求记录所对应的DNS区域;如果DNS服务器管理对应的DNS区域,则DNS服务器对此DNS区域具有权威。此时,如果本地区域中的相应资源记录匹配客户的解析请求,则DNS服务器权威的使用此资源记录答复客户的解析请求(权威答复);如果没有相应的资源记录,则DNS服务器权威的答复客

4、户无对应的资源记录(否定答复)。 如果没有区域匹配DNS客户端发起的解析请求,则DNS服务器检查自己的本地缓存。如果具有对应的匹配结果,无论是正向答复还是否定答复,DNS服务器非权威的答复客户的解析请求。此时,DNS解析完成。 如果DNS服务器在自己的本地缓存中还是没有找到匹配的结果,此时,根据配置的不同,DNS服务器执行请求查询的方式也不同: 默认情况下,DNS服务器使用递归方式来解析名字。递归方式的含义就是DNS服务器作为DNS客户端向其他DNS服务器查询此解析请求,直到获得解析结果,在此过程中,原DNS客户端则等待DNS服务器的回复。 如果你禁止DNS服务器使用递归方式,则DNS服务器工

5、作在迭代方式,即向原DNS客户端返回一个参考答复,其中包含有利于客户端解析请求的信息(例如根提示信息等),而不再进行其他操作;原DNS客户端根据DNS服务器返回的参考信息再决定处理方式。但是在实际网络环境中,禁用DNS服务器的递归查询往往会让DNS服务器对无法进行本地解析的客户端请求返回一个服务器失败的参考答复,此时,客户端则会认为解析失败。 递归方式和迭代方式的不同之处就是当DNS服务器没有在本地完成客户端的请求解析时,由谁扮演DNS客户端的角色向其他DNS服务器发起解析请求。通常情况下应使用递归方式,这样有利于网络管理和安全性控制,只是递归方式比迭代方式更消耗DNS服务器的性能,不过在通常

6、的情况下,这点性能的消耗无关紧要。 根提示信息是Internet命名空间中的根DNS服务器的IP地址。为了正常的执行递归解析,DNS服务器必须知道从哪儿开始搜索DNS域名,而根提示信息则用于实现这一需求。全世界范围内的根DNS服务器总共有13个,它们的名字和IP地址信息保存在%systemroot%system32dnscache.dns文件中,每次DNS服务器启动时从cache.dns文件中读取。一般情况下,不需要对此文件进行修改;如果你的DNS服务器是在内部网络中部署并且不需要使用Internet的根DNS服务器,则可以根据需要进行修改,将其指向到某个内部根域DNS服务器。 例如,当某个D

7、NS客户端请求解析域名/url并且DNS服务器工作在递归模式下时,完整的解析过程如下: DNS客户端检查自己的本地名字缓存,没有找到对应的记录; DNS客户端联系自己的DNS服务器NameServer1,查询域名 /url; 3.NameServer1检查自己的权威区域和本地缓存,没有找到对应值。于是,联系根提示中的某个根域服务器,查询域名/url; 4.根域服务器也不知道/url的对应值,于是,向NameServer1返回一个参考答复,告诉NameServe

8、r1 .org顶级域的权威DNS服务器; 5.NameServer1联系.org顶级域的权威DNS服务器,查询域名/url; 6.org顶级域服务器也不知道/url的对应值,于是,向NameServer1返回一个参考答复,告诉NameServer1 W域的权威DNS服务器; 7.NameServer1联系W域的权威DNS服务器,查询域名/url; 8.W域的权威DNS服务器知道对应值,并且返回给NameServer1; 9.NameServ

9、er1向原DNS客户端返回/url的结果,此时,解析完成。 DNS服务器全攻略之一:基础介绍 (2006-01-16 08:15) 查询响应类型 DNS服务器对于客户请求的答复具有多种类型,常见的有以下四种: 权威答复:权威答复是返回给客户的正向答复,并且设置了DNS消息中的权威位。此答复代表从具有权威的DNS服务器处发出; 正向答复:正向答复包含了匹配客户端解析请求的资源记录; 参考答复:参考答复只在DNS服务器工作在迭代模式下使用,包含了其他有助于客户端解析请求的信息。例如,当DNS服务器不能为客户端发起的解析请求找到某个匹配值时,则向DNS客户

10、端发送参考回复,告诉它有助于解析请求的信息; 否定答复:否定答复指出权威服务器在解析客户端的请求时可能遇到了以下两种情况之一: 权威DNS服务器报告客户端查询的名字不存在; 权威DNS服务器报告存在对应的名字但是不存在指定类型的资源记录。 无论正向答复还是否定答复,DNS客户端都将结果保存在自己的本地缓存中。 理解缓存的工作方式 DNS客户端和DNS服务器都会缓存获得的解析结果,这样可以提高DNS服务性能和减少DNS相关的网络流量。 DNS客户端缓存 当DNS客户端服务启动时,会读取Hosts文件中的所有主机名和IP地址的映射,并且保存在缓存中。Hosts存放在%systemroot%syst

11、em32driversetc目录,当你修改Hosts文件后,DNS客户端会立即读取Hosts文件并且对本地缓存进行更新。 另外,DNS客户端会缓存过去的查询结果,当DNS客户端服务停止时,将清空本地缓存。 DNS服务器缓存 DNS服务器像DNS客户端一样缓存名字解析结果,并且可以使用缓存中的信息来答复其他客户端的请求。你可以在DNS服务器管理控制台或者使用DNSCMD命令行工具手动清空缓存,另外当DNS服务器停止时,同样会清空DNS服务器缓存。 资源记录的生存时间(TTL)指定了资源记录可以缓存的时间的长短,而无论是DNS客户端缓存还是DNS服务器缓存;默认情况下,TTL是3600秒(1小时)

12、。需要注意的是,由于缓存的作用,DNS服务器上对于资源记录的修改可能不能立即生效。并且对于Internet域名来说,资源记录的修改可能会需要超过24小时的时间才能在所有DNS服务器上完成更新。 动态更新 当DNS客户端计算机上产生某个事件触发更新时,DNS客户端计算机上的DHCP客户端服务将会为本地计算机中使用的所有网络连接在相应的DNS服务器中对自己的A记录进行更新,从而可以确保DNS域名记录和IP地址记录的对应关系。而DNS服务器需要配置为允许动态更新,才能让DNS客户端计算机成功完成更新。当DNS客户端计算机上产生以下事件时,会触发DHCP客户端服务的动态更新行为: 添加、删除或修改了本

13、地计算机任何网络连接TCP/IP属性中的IP地址; 本地计算机的任何网络连接向DHCP服务器获取IP地址租约或者续约; DNS客户端上运行了Ipconfig /registerdns命令; DNS客户端计算机启动; 此DNS区域中的一台成员服务器提升为域控制器; 对于标准主要区域,你可以选择不允许动态更新和允许非安全和安全动态更新。但是允许非安全和安全动态更新具有安全隐患,因为DNS服务器不会对进行动态更新的客户端计算机进行验证,所以任何客户端计算机都可以对任何A记录进行动态更新,而不管它是否是此A记录的拥有者。通常情况下,你不应该使用此选项。 对于活动目录集成区域,除了上述的两个选项外,你还

14、可以使用安全动态更新。当使用此方式时,在客户端计算机更新自己的记录时,DNS服务器将要求客户端计算机进行身份验证来确保只有对应资源记录的拥有者才能更新此记录。 只有Windows 2000及以后版本操作系统的客户端计算机才能执行动态更新,低版本的Windows系统(NT4、9x/ME)不支持动态更新。不过,你可以通过DHCP服务器为这些低版本客户端计算机代理进行动态更新。当DHCP服务器在代理低版本客户端计算机注册A记录时,会将自己设置为此A记录的所有者。而在安全动态更新方式中,只有资源记录的所有这才能修改此记录,这样在其他DHCP服务器为此低版本客户端计算机代理注册时会出现拒绝访问的问题。因

15、此,你需要将此DHCP服务器加入到DnsUpdateProxy安全组中,这样当DHCP服务器更新A记录时,不会记录下此A记录的所有者信息,从而允许其他DHCP服务器来修改此A记录。 1.3 注意事项配置DNS时,首先需要备份配置文件。1.4 操作步骤1.4.1安装DNS服务1、规范主机名rootlab1 # vi /etc/hosts# Do not remove the following line, or various programs# that require network functionality will fail. lab1 localhost.local

16、domain localhost1 rootlab1 # vi /etc/sysconfig/networkNETWORKING=yesHOSTNAME=GATEWAY=rootlab1 # vi /etc/resolv.conf search nameserver 1检查是否安装bind软件rootlab1 # rpm -qa |grep bindbind-9.2.4-28.el4bind-utils-9.2.4-28.el4bind-libs-9.2.4-28.el4ypbind-1.17.2-13bind-ch

17、root-9.2.4-28.el41.4.2配置DNS服务启动DNS服务rootlab1 # service named startrootlab1 # ps -aux |grep namedWarning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQroot 6422 0.0 1.1 10792 3004 pts/0 T 07:22 0:00 vim /etc/named.confnamed 6572 0.0 1.1 49440 2992 ? Ssl 07:41 0:00 /usr/

18、sbin/named -u named -t /var/named/chrootroot 6609 0.0 0.2 3912 644 pts/0 R+ 07:48 0:00 grep named修改主配置文件rootlab1 # vi /etc/named.confzone "" IN type master; file "/var/named/.hosts" allow-update none; ;zone "123.168.192." IN type master; file "/var/name

19、d/192.168.123.rev" allow-update none; ;创建并修改正向解析文件rootlab1 # cp /var/named/localhost.zone /var/named/chroot/var/named/.hostsrootlab1 #vi /var/named/chroot/var/named/.hosts$TTL 86400 IN SOA . . ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS . IN MX 10 .www IN

20、A 0ftp IN A 1mail IN A 5 创建和修改反向解析文件rootlab1 # cp /var/named/named.local /var/named/chroot/var/named/192.168.123.revrootlab1 #vi /var/named/chroot/var/named/192.168.123.rev$TTL 86400 IN SOA . . ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expir

21、e 86400 ) ; Minimum IN NS .10 IN PTR .11 IN PTR .15 IN PTR .重启服务rootlab1 # service named restartrootlab1 # host -t MX mail is handled by 10 .rootlab1 # host -t SOA SOA . . 42 10800 900 604800 86400rootlab1 # host -t NS name server .1.4.3配置主从DNS服务配置主服务器rootlab1 # vi /etc/resolv.conf search nameserver

22、 1nameserver 0配置从服务器rootlab2 # vi /etc/resolv.conf search nameserver 1nameserver 0rootlab2 # vi /etc/named.confzone "" IN type slave; file "slaves/.hosts" masters 1 ;zone "123.168.192." IN type

23、 slave; file "slaves/192.168.123.rev" masters 1; ;rootlab2 # chmod g+w /var/named/chroot/var/named/rootlab2 # service named restartrootlab2 # ll /var/named/chroot/var/named/slaves/总用量 8-rw- 1 named named 411 2月 15 21:54 192.168.123.rev-rw- 1 named named 395 2月 15 21:54 .hosts1

24、.4.4配置DNS子域修改父域服务器正向解析文件rootlab1 #vi /var/named/chroot/var/named/.hosts$TTL 86400 IN SOA . . ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS . IN MX 10 .www IN A 0ftp IN A 1mail IN A 5bj IN NS www.bjwww.bj IN A 53

25、修改子域服务器主配置文件rootlab3 # vi /etc/named.confzone "" IN type master;file "/var/named/.hosts"allow-update none; ;rootlab3# service named restart1.4.4配置DNS高级选项1、配置DNS转发器rootlab2 # vi /etc/named.conf/ named.conf for Red Hat caching-nameserver/options directory "/var/named" dum

26、p-file "/var/named/data/cache_dump.db" statistics-file "/var/named/data/named_stats.txt" forward first; forwarders 0; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous

27、 versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ / query-source address * port 53;2、配置缓存cache-only 服务器rootlab2 # vi /etc/named.conf/ named.conf for Red Hat caching-nameserver/options directory "/var/named" dump-file "/va

28、r/named/data/cache_dump.db" statistics-file "/var/named/data/named_stats.txt" forward only; forwarders 0; 1; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versi

29、ons of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ / query-source address * port 53;3、配置WEB服务负载均衡rootlab1 # vi /var/named/chroot/var/named/.hosts $TTL 86400 IN SOA . . ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimu

30、m IN NS . IN MX 10 .www IN A 0ftp IN A 1mail IN A 5www IN A www IN A www IN A 4、配置实现泛域解析rootlab1 # vi /var/named/chroot/var/named/.hosts $TTL 86400 IN SOA . . ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1

31、D ) ; minimum IN NS . IN MX 10 .www IN A 0ftp IN A 1mail IN A 5www IN A www IN A www IN A * IN A 01.5 拓展知识由 Sun 微系统开发的网络信息服务系统(NIS)起初的名字叫黄页(Yellow Page),它是一个网络命名和管理系统,集中管理 Unix 操作系统。网络信息系统(NIS+)是网络信息服务系统(NIS)的

32、之后的版本,额外提供了安全及其它方面的功能。从本质上来说,它现在已经发展成一种工业标准。所有的主要 Unix 系统,就如 SUN 公司的 Solaris 网络操作系统、HP 公司的 Unix 操作系统、AIX、Linux 系统、网络 Unix 操作系统、开放的 Unix 操作系统、免费的 Unix 操作系统等,都支持网络信息服务(NIS)和网络信息系统(NIS+) 。 网络信息服务(NIS)利用客户机/服务器模式和远程过程调用(RPC)接口在主机之间进行通讯。网络信息服务(NIS)由服务器、客户机程序库和一些管理工具组成。网络信息服务(NIS)通常和网络文件系统(NFS)一起使用。利用网络信息

33、服务(NIS)时,在系统中的每一台客户机或服务器都会拥有整个系统的知识。任何一台主机上的用户仅利用用户身份和密码就能够读取或调用该网络中任何其它主机上的文件或应用软件。网络信息服务(NIS)类似于英特网的域名系统,但在一定程度上更类似于小型网络,或者说是为其设计的。它本来就是为局域网设计的。 网络信息服务(NIS)的关键词如下:专业术语描述NIS 域名(NIS domainname)NIS 的主服务器和它的所有客户机(包括它的从服务器)都拥有一个 NIS 域名(NIS domainname)。该 NIS 域名和 DNS 没有任何关系端口地图(portmap)要使远程过程调用有效,必须运行端口地

34、图(portmap)。如果没有运行,那么 NIS 服务器就不可能正常运行,而且该计算机也不能作为 NIS 客户机使用层服点绑定(Ypbind)在 NIS 的环境中,层服点绑定(Ypbind)是客户机和服务器通讯的核心。它将 NIS 客户机绑定到 NIS 服务器。它会占用该系统的 NIS 域名,并利用过程过程调用来连接服务器层服点服务(ypserv)这仅能在 NIS 服务器中运行;它就是 NIS 服务器程序本身。如果层服点服务8(ypserv 8)停止运行,那么该服务器就不再对 NIS 请求作出反应。远程过程调用的层服点密码(rpc.yppasswdd) 这仅能在 NIS 主服务器上运行;它是后

35、台邮件收发系统的一个程序,允许 NIS 用户更改他们的 NIS 密码。如果该程序没有运行,那么用户必须登录到 NIS 主服务器,并更改自己的密码。²1.NIS的基本概念NIS服务的应用结构中分为NIS服务器和NIS客户机两种角色 NIS服务器集中维护用户的帐号信息(数据库)供NIS客户机进行查询用户登录任何一台NIS客户机都会从NIS服务器进行登录认证,可实现用户帐号的集中管理2.NIS服务器配置NIS服务器的安装rpm -qa |grep yprpm -qa |grep portmapRHEL4的第1张安装光盘中包括NIS服务器的安装包# rpm -ivh ypserv-2.13-

36、5.i386.rpm 设置time和time-udp服务的启动状态 NIS服务器的运行需要time和time-upd服务的支持chkconfig -list |grep time# chkconfig time on# chkconfig time-udp on # service xinetd restart 在NIS服务器主机中建立NIS域名 # nisdomainname nistest# echo '/bin/nisdomainname nistest' >> /etc/rc.d/rc.local # echo 'NISDOMAIN=nistest&

37、#39; >> /etc/sysconfig/network 3.ypserv.conf文件的配置 NIS服务器的主配置文件是ypserv.conf/etc/ypserv.conf配置文件中可设置对认证数据库的访问控制/ : * : * : none/ : * : * : none* : * : * : deny4.securenets安全配置文件securenets文件用于对NIS客户端主机进行访问控制securenets文件需要手工建立# cat /var/yp/securenetsho

38、st 启动NIS服务器NIS服务器需要portmap服务的支持,并且需要启动ypserv和yppasswdd两个服务# service portmap status# service ypserv start# service yppasswdd startchkconfig -list |grep ypchkconfig -level 35 yppasswdd onchkconfig -level 35 ypserv on6.构建NIS数据库ypinit命令可构建NIS服务器的数据库文件ypinit命令按照“/var/yp/”目录中的Makefile文件的配置内容构建数据库文件# /usr/lib/yp/ypinit -m ll /var/yp/nistest/7.NIS客户机需要的软件NIS客户机需要安装ypbind和yp-tools两个软件包ypbind和yp-tools软件包是RHEL4中默认安装的rpm -qa |grep yprpm -ql ypbindrpm -ql yp-tools |grep bin设置hosts文件中的NIS服务器主机记录NIS客户机需要通过主机名访问NIS服务器# echo ' LinServ' >&

温馨提示

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

评论

0/150

提交评论