options {

        directory "/var/named";

        allow-recursion { 172.16.0.0/16;};  说明只给这个网段的主机递归

};


加那句话之前  dig -t A www.souhu.com @192.168.9.247 用本机地址去递归souhu,但是必须手动

              dig +trace -t A www.baidu.com @192.168.9.247 用本机去递归,自动显示所有过程

         

在options中添加

            allow-query   只允许某些人访问

            recursion no 不给任何人递归

完全区域传送

         dig -t axfr mageedu.com

增量区域传送                (乱码就export LANG=en)

         dig -t ixfr mageedu.com

例如:vim /var/named/mageedu.com.zone

在最后一行添加 pop    IN    A    192.168.9.4    

然后将版本号+1

重启service named reloade

dig -t IXFR=2012040201 mageedu.com   相当于更新从DNS服务器的信息

#####################################################################

vim /etc/named.conf

如果在options中添加allow-transfer {192.168.9.225; };只允许谁来传送,并且对全局有效

也可以单独添加到某个域当中

当然啦!named.localhost 和 named.loopback不可能成为从服务器 所以

应该填写 allow-transfer { none;};

在正反区域中添加allow-transfer {192.168.9.225; };很有必要

service named restart重启

再去尝试dig -t axfr mageedu.com 发现本机的IP地址传送不了了

#########################################################################

*****************************************************************

咱们现在说说如何配置从DNS服务器

1、rpm -e bind-libs bind-utils 卸载他俩

2、cd /etc/yum.repos.d;;;;scp 172.16.100.1:/etc/yum.repos.d/server.repo ./ 将yum源保存到当前目录下

3、yum install bind97 bind97-utils -y  安装

4、你会发现 /var/named目录下有一个文件slaves 它的属主属组都是named

5、同步过来的文件要保存在/var/named目录下,要么保存在slaves下要么赋予named写权限

6、setenforce 0 关闭SElinux

7、mv /etc/named.conf /etc/named.conf.org   将原文件改名

8、scp 192.168.9.247:/etc/named.conf /etc/

9、vim /etc/named.conf   编辑配置文件

10、   zone "mageedu.com" IN {

        type slave;    #####代表是从服务器,上节课做的事master代表是主服务器

        file "slaves/mageedu.com.zone.";

        masters {192.168.9.247; }; 定义一下主服务器是谁

        allow-transfer {none; }; 因为我不是主DNS服务器 ,所以不需要别人传送,也会更安全

};

11、然后咱们再把反向区域重新定义一下  同上

12、检查配置文件  named-checkconf

13、没有数据文件所以不用检查;所以只需要直接启动   service named start

14、报错!!!tail  /var/log/messages   会发现:/etc/named.conf:permission denied

15、ll /etc/named.conf 会发现named的属主属组都是root;;;chgrp named /etc/named.conf 将属组改为named

16、service named start

17、tail /var/log/messages 查看log下的日志信息

18、cd /var/named/slaves/  就是那个可读写的目录;用于保存从主DNS服务器上传送过来的更新信息

19、vim mageedu.com.zone   会见到人家的书写格式,更规范

20、咱们回到主服务器上,vim /var/named/mageedu.com.zone 

    添加一条:imap    IN    A    192.168.9.8    版本号+1  (DNS服务器都是要用ns1/2标记的;所以要加一条        IN    NS    ns2;;;;反向记录里也要添加)


20:详细介绍一下吧:我们每加一台NS服务器也就是DNS服务器,就要加一条NS记录 格式同上

21、service named reload 重读一下

22、tail /var/log/messages  查看日志 提示:reloading configuration succeeded

23、咱们再看看从服务器的日志  会发现版本号没有变化,没有传送;可能是refresh的时间没到

24、咱们去主服务器/etc/named.conf下编辑;在options下添加一项 notify yes;表示启动通知

25、service named reload 重启

26、会发现,只要在主DNS服务器的/var/nanmed/mageedu.com.zone 加一条记录,加一个版本。重启一下,从服务器就会自动接收并更新

27、来来来、咱们现在主服务器上编辑一条反向记录吧:vim /var/named/192.168.9.zone

28、添加一条主机  然后版本号+1   保存 重启   然后去从服务器上看,信息已经更新;多看看日志

END!!!!!!!!!!

###########################################################################################

如何用rndc控制我们的DNS服务器:

            rndc  

                 reload  重读配置文件和区域文件

                 reload zone 重读区域文件  

                 retransfer zone 重新传送

                 flush 清空缓存

                 restart 重启服务器

既然rndc能够远程控制,那么他的命令和key一定是非常关键的;不然任何人都可以把我们分服务器关闭

1、rndc-confgen > /etc/rndc.conf 生成配置文件

2、打开rndc.conf这个文件 会看到一半信息是带有注释的 ;它会提示你:

          Use with the following in named.conf 意思是将注释信息放入named.conf 并且去掉注释符

3、vim /etc/rndc.conf 这里面定义了rndc-key ;  默认密钥是什么;默认服务器是什么;默认端口是什么

4、删除/etc/rndc.key这个之前生成的文件

5、service named restart

6、看看状态:rndc -c /etc/rndc.conf status

7、手动通知一下区域rndc -c /etc/rndc.conf notify "mageedu.com" 此时看日志tail /var/log/messages 会发现它重新通知了一遍

8、rndc -c /etc/rndc.conf flush  清除缓存

9、rndc -c /etc/rndc.conf stop 停止服务器;;;netstat -tunlp 会发现53号端口都没有了

10、service named start  启动起来 

11、但是我们控制的终究是本机:

     我们需要修改named.conf 里面controls 选项的地址改一改 

      inet 后面写本机    下面allow写外网地址  让谁控制写谁

12、重启

13、netstat -tnlp 发现953监听在172.16.100.1上,(本机地址)

14、将100.1上/etc/rndc.conf 转发给100.2的root 目录下   

15、到100.2上  编辑rndc.conf  将default-server 172.16.100.1;

16、rndc -c rndc.conf status   远程查看100.1的状态

17、报错可能因为时间不同步;一般不要开放远程控制,因为很危险;但是在本机上是很常用的