本实验在虚拟机中进行

一、准备好三台虚拟机,一台配置主DNS,一台配置从服务器,另外一台配置子域,给三台主机都装上bind97。注意:给主DNS和从DNS服务器准备的地址要在同一个网段;

二、配置主DNS服务器

安装好bind97之后,主配置文件是/etc/named.conf,安装bind97之后会自动生成这个文件,但是我们这里是要自己定义所以我们不用默认的,将它删除或移走当然也可以直接改原文件!这里我们自己定义一个

# vim /etc/named.conf

定义好主配置文件之后我们要到/var/named/下配置我们要用的区域配置文件:

# cd /var/named

# vim aoxuetangli.com.zone

# vim 172.16.16.1.zone

做好这些之后不要忘了给named组读写权限。这样主DNS服务器就配置好了;

三、配置从DNS服务器

DNS的配置要比其他的配置都简单,因为从DNS服务器的区域配置文件都是从主DNS服务器上传递过去的,所有我们只需要给从DNS服务器主配置文件就可以了,但是不要忘了给主DNS服务器允许区域传送!

# vim /etc/named.conf

这里添加的masters一句是为了告诉服务器主服务器是哪一个,告诉服务器要去哪里去进行区域文件传送;

配置好后给named组读写权限,然后重启named服务,你会发现在/var/named/slaves目录下多了两个文件,这两个文件就是从主DNS服务器上区域传送过来的文件,每当主DNS服务器区域文件有修改时(注意:在修改主DNS服务器是要修改版本号,否则从DNS服务器读取不到)就会传递给从DNS服务器。

四、配置子域

在配置子域DNS之前要给主DNS添加指定子域DNS的域名

子域DNS的配置跟主DNS的配置几乎没什么差别,首先是主配置文件

# vim /etc/named.conf

allow-transfer { none; }; 这一句的意思是不允许进行区域传送。

配置好主配置文件下面来配置区域配置文件,跟主服务器一样我们要到/var/named/下配置我们要用的区域配置文件:

# cd /var/named

# vim qq.aoxuetangli.com.zone

# vim 172.16.69.zone

 

现在子域服务也配置好了,但是如果你认为这就配置完了,那你就错了!

我们虽然给子域服务器配置了文件,但是它仍然不能解析,原因就是没有得到授权,下面我们要去主DNS服务器完成授权。

四、完成授权

正向解析的授权很简单,只需要在主服务器上的正向区域文件中加上两句话即可:

qq              IN      NS      ns1.qq

ns1.qq          IN      A       172.16.69.1

注意要对应子域地址。

反向解析要相对复杂点,我们可以用两种方法来实现:

方法1、先在主配置文件中加一条区域配置文件

# vim /etc/named.conf

zone "16.172.in-addr.arpa" {

        type master;

        file "172.16.zone";

};

/var/named目录下创建对应的文件

# cd /var/named

# vim 172.16.zone

这就完成了。

方法2、将主配置文件中的

zone "16.16.172.in-addr.arpa" {

        type master;

        file "172.16.16.zone";

};

替换为

zone "16.172.in-addr.arpa" {

        type master;

        file "172.16.zone";

};

然后将文件内容更改为:

完成上面这些内容就算已将完成了DNS的相关配置,但是很多人做完这些之后依然不会通……

首先,你的主机默认的有一个DNS地址,你要把它改为自己的DNS地址(都要改哦)!

改了之后也许就能通了,但是还会有不通的,那就检查一下自己的SELinux是否是开启状态,用下面的命令:

# getenforce  查看状态

Enforcing 开启状态

Permissive 关闭状态

# setenforce 0 关闭

# setenforce 1 开启

如果做完了这些还不行就检查一下相关文件的属组是否是named。至此这个DNS服务器就已经完成了!