烂泥:centos安装及配置DNS服务器

本文由秀依林枫提供友情赞助,首发于烂泥行天下

要在centos配置DNS服务器,要先安装DNS软件BIND。当然我们也可以安装其他的DNS软件,比如国内的开源DNS软件DNSPod。

在此我们以通过DNS软件BIND为例,进行实验。

本次实验:OS centos6.5 64bit

安装DNS软件,使用如下命令:

yum -y install bind bind-chroot bind-utils

烂泥:centos安装及配置DNS服务器

烂泥:centos安装及配置DNS服务器

BIND配置文件保存在两个主要位置:

/etc/named.conf 这个是BIND服务主配置文件

/var/named/ 这个是用来存放DNS的zone文件

如果安装了bind-chroot,BIND会被封装到一个伪根目录内,原来配置文件的位置会变为:

/var/named/etc/named.conf和/var/named/var/named/

chroot是通过将相关文件封装在一个伪根目录内,来达到安全防护的目的。一旦该程序被攻破,将只能访问伪根目录内的内容,而不是真实的根目录。

bind刚刚安装完毕后,配置文件内容是空的。我们可以通过bind的帮助文档来进行配置,因为bind配置的参数比较多,强烈建议在帮助文档的基础通过bind提供的模版上进行配置。查看bind的配置,如下:

rpm –ql bind |tac

烂泥:centos安装及配置DNS服务器

分别复制/usr/share/doc/bind-9.8.2/sample/var/和/usr/share/doc/bind-9.8.2/sample/etc/目录下的文件,到/var/named/chroot/var/和/var/named/chroot/etc/目录下,如下:

cp -rv /usr/share/doc/bind-9.8.2/sample/var/* /var/named/chroot/var/

烂泥:centos安装及配置DNS服务器

cp -rv /usr/share/doc/bind-9.8.2/sample/etc/* /var/named/chroot/etc/

烂泥:centos安装及配置DNS服务器

配置模版复制完毕后,我们先来修改bind的主配置文件/var/named/chroot/etc/named.conf,如下:

vi /var/named/chroot/etc/named.conf

烂泥:centos安装及配置DNS服务器

我们会发现该配置文件中,有很多选项。在此为了实验的简单性,我们删除其他暂时不需要的,只保留bind最基本的功能。如下:

烂泥:centos安装及配置DNS服务器

此文件我们只保留了,bind的工作目录/var/named/,然后指定bind监听的端口及IP地址。

以上我们配置了bind的配置文件,如果只是按照上边的操作,我们的dns还没有不能正常工作。因为没有创建相关的域,下面我们来创建一个主域服务器。

首先要在bind的配置文件中,添加一个主域的定义。如下:

烂泥:centos安装及配置DNS服务器

zone "ilanni.com"{

type master;

file "ilanni.com.zone";

};

zone "ilanni.com" 定义ilanni.com域

type master;定义该域为主域服务

file "ilanni.com.zone"定义域的zone文件,该文件在/var/named/chroot/var/named/目录下。

现在我们来创建ilanni.com域的zone文件,默认情况下bind是没有生成该文件的,需要我们手工添加,但是在前边我们提到过由于bind的配置文件比较复杂,所以我们建议还是使用bind为我们提供的模版文件named.localhost。如下:

烂泥:centos安装及配置DNS服务器

复制named.localhost文件并重命名为ilanni.com.zone,如下:

cp named.localhost ilanni.com.zone

烂泥:centos安装及配置DNS服务器

现在开始编辑ilanni.com.zone文件,并在其中加入相关的地址解析。如下:

vi ilanni.com.zone

烂泥:centos安装及配置DNS服务器

我们只需要在该文件的最后添加新的资源记录即可,一个资源记录一般是由四部分组成。第一部分是主机名,第二部分是类型,第三分部是分类,其中A代表IPv4地址,第四部分代表IP地址。

注意在此我们添加了三条资源记录,第一条是有关邮件的资源记录,邮件资源记录一定要写在其他资源记录的前边,并且邮件资源记录是已域名的形式出现,并且域名后边最后还有一个点。

这样我们的ilanni.com.zone文件就已经配置完毕后,下面我们在检查下/var/named/chroot/var/named目录下,所有文件的属性,一定要具有可读属性。如下:

烂泥:centos安装及配置DNS服务器

以上全部配置完毕后,我们就可以来启动bind。使用以下命令:

/etc/init.d/named start

如果bind已经启动,我们也可以通过/etc/init.d/named reload命令重新加载配置文件。如下:

烂泥:centos安装及配置DNS服务器

由于这台机器本身已经搭建DHCP服务器,所以我们现在来修改客户端在通过DHCP服务获取到的DNS地址,如下:

烂泥:centos安装及配置DNS服务器

其中10.5.5.1是本机的IP地址。

现在我们来看看客户端获取到的IP地址,如下:

烂泥:centos安装及配置DNS服务器

先使用nslookup命令进行测试,如下:

烂泥:centos安装及配置DNS服务器

现在使用host命令测试www.ilanni.com和ftp.ilanni.com的IP地址,如下:

host www.ilanni.com

host ftp.ilanni.com

烂泥:centos安装及配置DNS服务器

通过上图,我们可以很明显的看到目前www.ilanni.com和ftp.ilanni.com已经发解析出来,这个和我们再BIND上的配置是相同的。

现在再使用dig命令测试邮件服务器的IP地址,如下:

dig –t MX ilanni.com

烂泥:centos安装及配置DNS服务器

通过上图,我们可以很明显的看到邮件服务器已经正确解析到10.5.5.3这台服务器上。

也可以通过dig命令测试www及ftp的解析情况,如下:

dig -t A www.ilanni.com

烂泥:centos安装及配置DNS服务器

dig -t A ftp.ilanni.com

烂泥:centos安装及配置DNS服务器

现在我们再通过最实际的效果来访问下10.5.5.3上已经搭建的web服务器,如下:

烂泥:centos安装及配置DNS服务器

烂泥:centos安装及配置DNS服务器

到此有关centos的DNS安装及简易配置已经全部结束。

上一篇:在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现Web端直传,服务端签名直传并设置上传回调的实现流程


下一篇:烂泥:centos安装及配置DHCP服务器