主從複制:
dns伺服器類型:
主伺服器:區域解析庫手動建立
從伺服器:區域解析庫不能手動建立和修改,要從主伺服器同步而來
從伺服器從主伺服器上拉取區域解析庫用完全區域傳送axfr和不完全區域傳送ixfr
完全區域傳送是在從dns伺服器第一次從主伺服器同步是用完全區域傳送axfr
1、配置主從dns伺服器需要時間同步
crontab:
*/3 * * * * /usr/sbin/ntpdate 172.16.0.1 &> /dev/null
每3分鐘從時間伺服器同步一次時間
2、從伺服器bind版本不能低于主伺服器bind版本,以使從伺服器能相容主伺服器bind程式特性
網域:bh4cxj.com
配置從伺服器:
1、到域名注冊商那裡添加一個從dns伺服器的ns記錄
2、先确定從伺服器的bind版本不低于主dns伺服器
3、将主從dns伺服器每3分鐘和同一個時間伺服器同步一次時間
# crontab -e
4、在主dns伺服器的解析庫中添加從dns伺服器的ns記錄和a記錄,然後還要修改版本号
[root@localhost named]# vi /var/named/bh4cxj.com.zone
重新加載主dns伺服器配置
[root@localhost named]# service named reload
5、添加一個從解析區域
修改主配置檔案
[root@localhost etc]# vi /etc/named.conf
在從dns伺服器上添加一個從解析區域
[root@localhost etc]# vi /etc/named.rfc1912.zones
檢查文法
[root@localhost etc]# named-checkconf /etc/named.conf
啟動服務
[root@localhost named]# service named start
[root@localhost named]# ls slaves/
可以看到已經從伺服器上同步到解析庫
看一看這個同步到的解析庫内容
[root@localhost named]# cat slaves/bh4cxj.com.zone
可以看到版本号和從dns伺服器正是在主伺服器上做的修改,已經被同步到了從dns伺服器的解析庫
6、測試從dns伺服器
檢視所有的記錄
[root@localhost named]# dig -t axfr bh4cxj.com @localhost
查詢www.bh4cxj.com
[root@localhost named]# dig -t a www.bh4cxj.com @localhost
區域傳送的限制功能
主dns伺服器隻允許從伺服器區域傳送
從dns伺服器不允許任何伺服器進行區域傳送
bind中内置了acl通路控制清單
none:所有都不允許
any:允許任意
localhost: 本機
localnet:本網絡
allow-transfer { ip; ip; };
将主dns伺服器修改為僅允許從dns server進行區域傳送
[root@localhost named]# vi /etc/named.rfc1912.zones
重載服務配置
在主dns上區域傳送
[root@localhost named]# dig -t axfr bh4cxj.com @172.16.249.116
可以看到傳送失敗,在從dns伺服器上測試
傳送成功,設定生效
将從dns server修改為不允許任何人進行區域傳送
在主dns server和從dns server上測試
[root@localhost named]# dig -t axfr bh4cxj.com @172.16.142.53
子域授權
子域:ops.bh4cxj.com
master ns: 172.16.142.153
slave ns: 172.16.142.154
mail: 172.16.142.125
www server: 172.16.142.180
ftp server: 172.16.142.121
子域授權,在其父域的區域解析庫中添加“膠水記錄(glue record)”
在父域bh4cxj.com的區域解析庫中添加子域的ns記錄
[root@localhost ~]# service named force-reload
配置子域ops.bh4cxj.com主從複制
1、安裝bind
2、配置主配置檔案
定義一個區域
3、為主dns server提供區域解析庫
修改解析庫檔案的屬組和權限
[root@localhost named]# chown :named ops.bh4cxj.com.zone
[root@localhost named]# chmod 640 ops.bh4cxj.com.zone
4、檢查配置檔案
[root@localhost named]# named-checkconf
[root@localhost named]# service namedc onfigtest
5、啟動
6、測試
在從dns server上執行
[root@localhost ~]# dig -t axfr ops.bh4cxj.com @172.16.142.153
7、配置從dns server
定義一個從區域
限定區域傳送
檢查配置檔案
8、啟動測試
[root@localhost ~]# service named start
[root@localhost ~]# cat /var/named/slaves/ops.bh4cxj.com.zone
[root@localhost ~]# dig -t a
mail.ops.bh4cxj.com @localhost