1、 主从复制
/etc/resolv.conf
nameserver MASTER_DNS_IP:只要主DNS不当机,就一直使用这个DNS服务
nameserver SLAVE_DNS_IP
主:bind版本可以低于从的,
向区域中添加从服务器的关键:
在上级获得授权
在区域数据文件中为从服务器添加一条NS记录和对应的A或PTR记录
1、在主DNS服务器上区域数据文件中添加
2、在从DNS服务器上主配置文件中添加一个区域
#定义区域数据文件保存的位置
注意:从服务器第一次配置好后会从自动主服务上同步区域数据文件
然后按SOA中定义好的每隔多久后检查一次更新也可以在更改主DNS服务器后,通过更改SOA中序列号来通知从服务器立刻更新区域数据文件,主DNS服务器加载配置文件后才会开始通知
[root@BAIYU_110 slaves]# ls /var/named/slaves/ magelinux.com.zone [root@BAIYU_110 slaves]# dig -t A www.magelinux.com @192.168.100.110 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> -t A www.magelinux.com @192.168.100.110 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8455 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;www.magelinux.com. IN A ;; ANSWER SECTION: www.magelinux.com. 6000 IN A 192.168.100.22 ;; AUTHORITY SECTION: magelinux.com. 6000 IN NS dns2.magelinux.com. magelinux.com. 6000 IN NS sbsb.magelinux.com. ;; ADDITIONAL SECTION: sbsb.magelinux.com. 6000 IN A 192.168.100.20 dns2.magelinux.com. 6000 IN A 192.168.100.23 ;; Query time: 0 msec ;; SERVER: 192.168.100.110#53(192.168.100.110) ;; WHEN: Mon Sep 21 15:51:58 2015 ;; MSG SIZE rcvd: 121
[root@BAIYU_110 slaves]# dig -x 192.168.100.28 @192.168.100.110 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> -x 192.168.100.28 @192.168.100.110 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31649 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;28.100.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 28.100.168.192.in-addr.arpa. 6000 IN PTR iimg.magelinux.com. ;; AUTHORITY SECTION: 100.168.192.in-addr.arpa. 6000 IN NS dns2.magelinux.com. 100.168.192.in-addr.arpa. 6000 IN NS sbsb.magelinux.com. ;; ADDITIONAL SECTION: sbsb.magelinux.com. 6000 IN A 192.168.100.20 dns2.magelinux.com. 6000 IN A 192.168.100.110 ;; Query time: 0 msec ;; SERVER: 192.168.100.110#53(192.168.100.110) ;; WHEN: Mon Sep 21 17:08:26 2015 ;; MSG SIZE rcvd: 147
区域传送安全控制:
在定义区域的主配置文件中对要限制的相应的区域添加:
allow-transfer { 允许同步的IP; };
allow-update { none; }不允许传送(就是不允许别的机器同步本机上的相应的区域资源文件)
用dig模拟完全区域传送:
dig -t axfr 区域名称 @server
rndc:Remote Name Domain Controller
远程管理BIND的工具
rndc:密钥
rndc:持有一半密钥,保存于rndc的配置文件中
BIND:持有一半密钥,保存于主配置文件中
rndc的配置文件/etc/rndc.conf
CentOS,RHEL:密钥文件/etc/rndc.key
rndc:
reload
reload zone
reconfig:重读配置文件并加载新增的区域
querylog:关闭或开启查询日志
flush:清空服务器的缓存
flushname nam;清空指定名称的区域
trace:打开debuf,debug有级别的概念,每执行一次提升一次级别
trace Leve了:指定debug的级别
如果rndc无法正常工作,可尝试使用rndc-confgen生成/etc/rndc.conf配置文件,并将配置文件后半部分复制到BIND的主配置文件中并按指示启用即可
二、bind子域授权 在父域的配置文件中添加如下项: 授权的子区域名称 子区域的名称 子区域的名称服务器的IP地址 1、在DNS服务器区域资源记录上添加一条子区域记录和对应的A记录 2、在子域DNS服务器上配置主配置文件,添加区域 3、在子域DNS服务器上创建区域资源记录文件 [root@localhost named]# dig -t NS tech.magelinux.com @192.168.100.30 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t NS tech.magelinux.com @192.168.100.30 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56350 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; QUESTION SECTION: ;tech.magelinux.com. IN NS ;; ANSWER SECTION: tech.magelinux.com. 600 IN NS dns.tech.magelinux.com. ;; ADDITIONAL SECTION: dns.tech.magelinux.com. 600 IN A 192.168.100.30 ;; Query time: 1 msec ;; SERVER: 192.168.100.30#53(192.168.100.30) ;; WHEN: Sun Sep 20 12:39:24 2015 ;; MSG SIZE rcvd: 70 [root@localhost named]# dig -t A WWW.tech.magelinux.com @192.168.100.30 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t A WWW.tech.magelinux.com @192.168.100.30 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43160 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;WWW.tech.magelinux.com. IN A ;; ANSWER SECTION: WWW.tech.magelinux.com. 600 IN A 192.168.100.31 ;; AUTHORITY SECTION: tech.magelinux.com. 600 IN NS dns.tech.magelinux.com. ;; ADDITIONAL SECTION: dns.tech.magelinux.com. 600 IN A 192.168.100.30 ;; Query time: 0 msec ;; SERVER: 192.168.100.30#53(192.168.100.30) ;; WHEN: Sun Sep 20 12:39:39 2015 ;; MSG SIZE rcvd: 90 [root@localhost named]# dig -t A WWW.magelinux.com @192.168.100.30 #此时子域不能解析父域,而父域可以解析子域 ^C[root@localhost named]# |
三、区域转发:转发域
# 反向解析转发这里没说以后学习
转发非本机负责解析的所有区域
options{
forward only|frist
forwarders{ ip; }
}
转发某特定区域
zone"特定区域" IN{
type forward;
forwarders{ ip; }
forward only|frist
}
转发必须对方服务器支持递归
解析某本机不负责的区域内的名称时不转发给根,而是转给指定主机:
zone "ZONENAME" IN { #在子域中配置,只转发一个区域
type forward;
forwarders { DNS_SERVER; };
forward only|first; #转发服务器不应答也不找根|不应答就找根
};
在主配置文件的全局选项options添加:
forward first;
forwarders {192.168.100.7; };
表示转发所有的域,除了已经定义好的域
[root@localhost named]# dig -t A www.magelinux.com @192.168.100.30 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t A www.magelinux.com @192.168.100.30 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40147 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 # 现在可以解析父域了,因为是转发的,所以这里是非权威解答 ;; QUESTION SECTION: ;www.magelinux.com. IN A ;; ANSWER SECTION: www.magelinux.com. 5915 IN A 192.168.100.22 ;; AUTHORITY SECTION: magelinux.com. 5915 IN NS dns2.magelinux.com. magelinux.com. 5915 IN NS sbsb.magelinux.com. ;; ADDITIONAL SECTION: dns2.magelinux.com. 5915 IN A 192.168.100.110 sbsb.magelinux.com. 5915 IN A 192.168.100.20 ;; Query time: 0 msec ;; SERVER: 192.168.100.30#53(192.168.100.30) ;; WHEN: Sun Sep 20 13:15:03 2015 ;; MSG SIZE rcvd: 121
四、DNS安全控制选项
allow-transfer {}; 允许转发主机,通常需要启用
allow-query {}; 允许查询的主机
此项通常仅用于服务器是缓存名称服务器,只开放查询给本地客户端
allow-recursion {}; 定义递归白名单
allow-update { none; }; 定义允许动态更新区域数据文件的主机白名单
ACL:bind支持使用访问控制列表
acl ACL_NAME {
192.16.0.0/16;
192.168.0.0/24;
127.0.0.0/8;
};
访问控制列表只有定义后才能使用,通常acl要定义在named.conf的最上方
bind有4个内置的ACL:
any:任何主机
none:无一主机
local:本机
localnet:本机所在的网段
有点乱,以后有时间再整理了,,,,,,,,,,,,,,