options { directory "/var/named"; allow-recursion { 172.16.0.0/16;}; 说明只给这个网段的主机递归 };
加那句话之前 dig -t A www.souhu.com @192.168.9.247 用本机地址去递归souhu,但是必须手动
在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、报错可能因为时间不同步;一般不要开放远程控制,因为很危险;但是在本机上是很常用的
|