RHEL5中搭建DNS
推荐
原创
©著作权归作者所有:来自51CTO博客作者wengyk的原创作品,请联系作者获取转载授权,否则将追究法律责任
RHEL5中搭建DNS |
这几天正在搭建LAMP环境,差不多快完工了,最近几天文档差不多就可以整理出来了。在搭建LAMP环境的时候DNS的支持是必须的,所以今天先把DNS的文档先整理出来了。这样在整理后面的LAMP和postfix邮件时就好理解多了,这两天感觉最有难度的就是搭建postfix邮件服务器了。不过也差不多快搞定了,好了,不MJ了,下面是在RHEL5.4中使用Bind软件搭建DNS服务器的过程,在这里我直接使用RPM包装了,因为DNS还是比较简单的,到后面LAMP及postfix就开始有难度了。 一、首先使用下列命令来查看bind软件包是否已经安装,如果安装可以直接进行配置,如果没有则进行安装: liwei@linux# rpm -qa |grep bind liwei@linux# mount /dev/cdrom /media 为了以后的安装包方便下面说一下简单的本地yum的配置,以后就不用使用rpm命令装软件包了!!下面修改一下yum的配置文件,然后就可以使用yum命令来安装软件包了!! liwei@linux# vi /etc/yum.repos.d/rhel-debuginfo.repo 把配置文件中baseurl的路径和enabled的值改成如下: baseurl=file:///media/Server enabled=1 修改了这两处后保存退出就OK了,其中第一个选项是指定你把你的系统光盘挂载的位置。 修改好以上两处选项后就可以使用yum命令来安装软件包了,当然你也可以使用rpm命令来安装(如果你不嫌被依赖关系搞崩溃的话)。千万要记住用yum命令安装软件包之前首先得挂载光盘(mount /dev/cdrom /media)。 如果使用rpm命令安装的话需要安装四个软件包: bind-libs-9.3.6-4.p1.el5 bind-utils-9.3.6-4.p1.el5 bind-9.3.6-4.p1.el5 bind-chroot-9.3.6-4.p1.el5 当然版本可以不同。 为了缓存DNS解析结果,还应安装caching-nameserver包,使用yum命令安装的话就是: liwei@linux# yum -y install bind liwei@linux# yum -y install caching-nameserver liwei@linux# yum -y install bind-chroot 执行完以上这些命令后,bind软件包就已经被安装到了系统里,可以使用命令rpm -qa |grep bind来查看一下。其中软件包bind-chroot是为了系统的安装而装的,它可以使原本存放DNS配置文件的位置改变。如未安装这个包之前DNS的配置文件存放在/etc/named.conf下面,安装了这个包后,DNS的配置文件就改存在/var/named/chroot/etc/named.conf里了。这个包的具体作用可以到网上搜一下,这里只做简单说明。 二、DNS的配置选项 DNS服务器程序安装到系统后,还需要对它的配置文件进行修改,添加需要在本地DNS服务器解析的域名,才能使DNS服务器进行正常工作。 在配置DNS时,需要对多个配置文件进行修改,在修改之前我们先来看一下这些配置文件各自的作用: 1./var/named/chroot/etc/name.conf:DNS服务器的主配置文件,在这个文件中可以设置通用参数,但在该文件中并不具体设置解析信息,而只是设置指向每个域名和IP地址映射信息的文件。 2./var/named/chroot/var/named/named.ca:这个文件是根域DNS服务器指向的文件,通过该文件可以指向根域DNS服务器。用户一般不要修改这个文件。此文件可以到到网上去下载,然后下载下来把名字重命名为named.ca并复制到/var/named/chroot/var/named/里。 3./var/named/chroot/var/named/localost.zone:用于将名字localhost转换为本地回送IP地址(127.0.0.1)。 4.用户配置的域名解析文件:也称为区文件,若当前DNS服务器需要解析多个域名,则需要设置多个域名解析文件。若需要反向解析,还要设置对应的反向解析文件。 三、构建缓存域名服务器: 缓存域名服务器通常架设在企业的局域网内部,主要目的是提高域名解析的速度和节约对互联网访问的出品带宽。下面以一个实例来说明一下如何构建缓存域名服务器,基本系统网络环境如下: 》缓存域名服务器主机位于局域网内,IP地址为192.168.0.1。 》局域网内的PC机将首选DNS服务器为192.168.0.1。 》缓存域名服务器本身应能够访问Internet中的其他DNS服务器。 》缓存域名服务器代为处理客户端的DNS解析请求,并缓存查询结果。 1.首先建立主配置文件named.conf: 安装好caching-nameserver软件包以后,将会提供有关配置文件的范本,我们只需要稍做改动即可完成大部分配置。在主配置范本文件named.caching-nameserver.conf中,包含了默认的缓存配置项,并通过“include“方式包含了文件named.rfc1912.zones中的基本区域设置(如根域、回环域等)。 建立缓存域名服务器的named.conf文件: liwei@linux# cp /var/named/chroot/etc/named.caching-nameserver.conf /var/named/chroot/named.conf liwei@linux# vi /var/named/chroot/etc/named.conf options { listen-on port 53 { 192.168.0.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"; query-source port 53; recursion yes; }; zone "." { type hint; file "named.ca"; }; 有时候为了提高解析效率,也可以不向根域查询,而是将用户羰的解析请求转发给特定的DNS服务器(如北京网通的公共DNS服务器),收到返回的查询结果后再传递给客户端。只要去掉“zone"."{.....};"的设置,并在全局配置中正确设置forwarders参数就可以实现此功能了。如在named.conf文件中设置转发DNS服务器地址,将解析请求转发给202.106.0.20、202.106.148.1。 liwei@linux# vi /var/named/chroot/etc/named.conf //向options选项中添加如下选项即可; options { forwarders { 202.106.0.20; 202.106.148.1; }; }; 2.确认根域地址数据库文件named.ca: 根域的地址数据库直接使用范本文件即可,位于“/var/named/chroot/var/named/named.ca"。在该文件中,记录了Internet中13台根域服务器的IP地址等相关信息, 3.启动named服务 执行“service named start”命令来启动named服务。 4.验证缓存域名服务器 在局域网的客户机中,将使用的DNS服务器地址设置为192.168.0.1(缓存域名服务器的IP地址),然后执行nslookup www.google.com命令进行解析,验证是否能够获得该域名对应的IP地址信息。 四、构建主域名服务器 主域名服务器通常架设在Internet环境中,主要目的是为客户端提供本域内主机名与IP地址的解析。下面以一个实例来说明如何构建主域名服务器的配置。 系统网络环境如下: 》主域名服务器位于Internet中,IP地址为172.16.0.1,主机名为ns1.liwei.com; 》所负责的DNS域为"liwei.com"; 》为以下服务器提供正向解析: >网站服务器“www.liwei.com“,IP地址为“172.16.0.2”。 >邮件服务器“mail.liwei.com",IP地址为“172.16.0.2"。 >FTP服务器“ftp.liwei.com",IP地址为“172.16.0.3“。 >主域名服务器“ns1.liwei.com",IP地址为“172.16.0.1”。 >从域名服务器“ns2.liwei.com",IP地址为“172.16.0.4“。 》为上述服务器提供反向解析。 》为”liwei.com“域内的其他主机提供泛域名解析,对应的IP地址为“172.16.0.2“。 下面是构建主域名服务器的具体步骤: 一、首先是配置IP地址,可以修改”/etc/sysconfig/network-scripts/ifcfg-eth0“配置文件来配置IP地址。 二、在目录”/var/named/chroot/etc/“下面新建主域名服务器的配置文件“named.conf",然后在此文件里写入如下内容: options { directory "/var/named"; //全局配置选项,指定服务所在的位置 }; zone "liwei.com" { //区域配置选项,指定区域配置的类型和区域配置文件名 type master; file "liwei.com.zone"; }; zone "0.16.172.in-addr.arpa" { type master; file "172.16.0.zone“; }; 三、在目录"/var/named/chroot/var/named/"下新建区域配置文件“liwei.com.zone"和“172.16.0.zone“这两个区域配置文件要和上面主配置文件named.conf里的区域配置选项里的相对应。 1.新建“liwei.com.zone”区域配置文件,如里面写入如下内容: $TTL 86400 @ IN SOA ns1.liwei.com. root.liwei.com. ( 2010070100 1D 15M 1W 2W ) @ IN NS ns1.liwei.com. @ IN MX 10 mail.liwei.com. www IN A 172.16.0.2 mail IN A 172.16.0.2 ftp IN A 172.16.0.3 ns1 IN A 172.16.0.1 ns2 IN A 172.16.0.4 2.新建"172.16.0.zone"文件,可以直接cp: liwei@linux# cp liwei.com.zone 172.16.0.zone 然后修改172.16.0.zone文件,修改成如下内容: $TTL 86400 @ IN SOA ns1.liwei.com. root.liwei.com. ( 2010070100 1D 15M 1W 2W ) @ IN NS ns1.liwei.com. @ IN MX 10 mail.liwei.com. 2 IN PTR www.liwei.com. 2 IN PTR mail.liwei.com. 3 IN PTR ftp.liwei.com. 1 IN PTR ns1.liwei.com. 4 IN PTR ns2.liwei.com. 四、修改一下"/etc/resolv.conf"文件,添加一条记录: nameserver 172.16.0.1 五、测试 做完以上四步后现在就可以解析了,在终端下输入:nslookup,然后输入你想解析的名称就可以进行测试了,如:www.liwei.com 、ftp.liwei.com等!!如果测试失败,就要根据出现的问题提示来进一步排错了!!也可以在Windows XP上把首选DNS指向此主机,然后输入nslookup来解析。 上面讲了如何构建主域名服务器,下面来介绍一下如何构建从域名服务器: 一、首先确定从域名服务器的IP地址,及主机名,在此就以IP地址为172.16.0.4 、主机名ns2.liwei.com的主机为从域名服务器。 二、修改主域名服务器的配置主件named.conf,在配置文件中添加如下条目: allow-transfer { 172.16.0.4; }; //注意:在正向解析和反向解析中都应该添加这一条 三、在从域名服务器上创建“liwei.com“域的named.conf配置文件,将zone的类型设置为“slave",并使用“master {};"语句指定主域名服务器的IP地址,具体内容如下: liwei@ns2# vi /var/named/chroot/etc/named.conf options { directory "/var/named"; }; zone "liwei.com" { type slave; masters { 172.16.0.1; }; file "slaves/liwei.com.zone"; }; zone "0.16.172.in-addr.arpa" { type slave; masters { 172.16.0.1; }; file "slaves/172.16.0.zone"; }; 四、在从域名服务器上启动named服务,然后查看目录“/var/named/chroot/var/named/slaves/“下是否有"liwei.com.zone"和"172.16.0.zone"这两个文件,如果有的话说明从域名服务器构建成功,否则就需要排错,看哪出现问题!!!如果成功可以在客户机上把首选DNS设置成从域名服务器的IP地址,然后在命令行下输入“nslookup“命令来看是否能够解析那些主机,一般是可以的,不可以的话请检查一下你的防火墙等。。。。。 好了,DNS就介绍到这里了,下一节开始介绍LAMP和postfix邮件服务器的搭建!!! | | | |