DNS集群的部署
服务器端要作为辅助dns服务器
[辅助dns服务器端]
1.yum install bind -y
2.编写配置文件
vim /etc/named.conf
11 listen-on port 53 { any; };
17 allow-query { any; };
32 dnssec-validation no;
保存退出
vim /etc/named/named.rfc1912.zones
zone "localhost" IN {
20 type master;
21 file "named.localhost";
22 allow-update { none; };
23 };
24
25 zone "westos.com" IN { ###域名
26 type slave;####类型设施为slave(助手)
27 masters { 172.25.254.66; };##主dns服务器ip
28 file "slaves/westos.com.zone";##读取的A记录文件位置
29 allow-update { none; };
30 };
3.systemctl stop firewalld.service
4.systemctl restart named
【主dns服务器端】
1.修改配置文件.
vim /etc/named.rfc1912.zones
zone "westos.com" IN {
type master;
file "westos.com.zone";
allow-update { none; };
allow-transfer { 172.25.254.166; };##允许传送的服务器ip(辅助dns服务器)
2.systemctl restart named
测试:
在主dns 端
dig www.westos.com
如果与之前设置的ip相同就说明成功了,
########自动同步dns服务##########
在主dns服务器上
编辑配置文件
1.vim /etc/named.rfc1912.zones
在29行添加如下内容:
29 also-notify { 172.25.254.166; };#当dns文件改变后,向辅助dns服务器推送新的文件
2.vim /var/named/westos.com.zone
$TTL 1D
@ IN SOA dns.westos.com. root.westos.com. (
2016120101 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.westos.com.
dns A 172.25.254.66
www A 172.25.254.150
说明:修改这一文件的理由是由于dns同步是,系统会读取“2016120101 ; serial ”这串字符,通过识别前面的数字来判断内容是否更新。
测试:
辅助dns服务器
dig www.westos.com
在dig之后,你会发现在/var/named/slaves目录新生成一个westos.com.zone文件。这就是同步更新。
###远程修改dns服务###
在主dns服务器上
1.授予权限,谁能修改我的是设置
vim /etc/named.rfc1912.zones
zone "westos.com" IN {
type master;
file "westos.com.zone";
allow-update { 172.25.254.166; };#允许谁修改我
allow-transfer { 172.25.254.166; };
also-notify { 172.25.254.166; };
};
2. chmod 770 /var/named/ #给用户组授权
3.关闭selinux。以及防火墙。并重新启动named服务
cp -p /var/named/westos.com.zone /mnt #这步操作是备份文件,方便还原操作,方便进行后续的实验。
测试:
在辅助dns服务器上
[[email protected] slaves]# nsupdate
> server 172.25.254.66
> update delete www.westos.com##删除这个域名
> send
> quit
在主dns上
dig www.westos.com
发现没有www.westos.com这个域名已经消失。操作成功!
再在辅助dns端
[[email protected] slaves]# nsupdate
> server 172.25.254.66
> update add www.westos.com 86400 A 172.25.254.50#添加域名。并把a记录文件指定给50主机,86400指的是一天的秒数。
> send
> quit
在主dns端
dig www.westos.com
可以看到,显示已经正常,并且A记录文件指向已经修改为50主机。试验成功
同时
[[email protected] var]# cd /var/named/
[[email protected] named]# ls
data named.ca named.localhost slaves westos.com.zone.jnl
dynamic named.empty named.loopback westos.com.zone
可以看到新生成的几个文件,并且westos.com.zone文件已经被修改
还原环境:
rm -fr westos.com.zone westos.com.zone.jnl
cp -p /mnt/westos.com.zone . # -p 表示保留权限 .表示当前目录
最后重启服务
###设置密钥远程修改dns服务
在主dns端
1.cp -p /etc/rndc.key /etc/lyitx.key#根据模板文件重新生成新的密钥
2.cd /mnt
3.dnssec-keygen -a HMAC-MD5 -b 128 -n HOST lyitx
说明:-a 选择生成密钥文件的算法,这里文件用的HMAC-MD5 我们也用。
-b 指定密钥中的字节数量
-n 指定密钥文件的所有者类型
4.cat Klyitx.+157+04575.private
Private-key-format: v1.3
Algorithm: 157 (HMAC_MD5)
Key: quy06Rkj4v5v75vfx23dDA==
Bits: AAA=
Created: 20161201073933
Publish: 20161201073933
Activate: 20161201073933
5.vim /etc/lyitx.key
key "lyitx" {
algorithm hmac-md5;
secret "quy06Rkj4v5v75vfx23dDA==";
};
6.vim /etc/named.conf
在42行位置添加:include "/etc/lyitx.key";#指定密钥位置
7.scp Klyitx.+157+04575.* [email protected]:/mnt/#发送密钥
8.vim /etc/named.rfc1912.zones
zone "westos.com" IN {
type master;
file "westos.com.zone";
allow-update { key lyitx; };##只有拥有密钥的才能修改
# allow-transfer { 172.25.254.166; };##注释掉
# also-notify { 172.25.254.166; };##注释掉
};
9.systemctl restart named
在辅助dns端
[[email protected] mnt]# nsupdate -k /mnt/Klyitx.+157+04575.private
> server 172.25.254.66
> update add www.westos.com 86400 A 172.25.254.88#添加一个A记录文件指向实现轮换
> send
> quit
测试:
dig www.westos.com
恢复:
rm -fr westos.com.zone westos.com.zone.jnl
cp -p /mnt/westos.com.zone .
最后重启服务
###dhcp服务自动配置dns服务(ddns)####
还有个名字叫花生壳
1.首先安装dhcp服务 yum install dhcpd -y
2.关闭火墙,selinux
3. cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
4.vim /etc/dhcp/dhcpd.conf
7 option domain-name "westos.com";##域名
8 option domain-name-servers 172.25.254.66;##dns
14 ddns-update-style interim;##开启dhcp更新
30 subnet 172.25.254.0 netmask 255.255.255.0 {##网段与子网掩码
31 range 172.25.254.100 172.25.254.111;##ip池,获取的ip在这个范围内
32 option routers 172.25.254.66;##网关
33 }
34 key "lyitx" {##密钥
35 algorithm hmac-md5;
36 secret "quy06Rkj4v5v75vfx23dDA==";
37 };
38 zone westos.com. {
39 primary 127.0.0.1;
40 key lyitx;#没有引号
41 }
systemctl restart dhcpd.service
systemctl restart named
在辅助dns端,
1.修改个主机名称,
hostnamectl set-hostname music.westos.com ##这里的westos.com与dhcp配置文件中的域名应保持一致
2.将ip获取方式设制成dhcp
3.systemctl restart network
4.ip addr show 查看是否获取到ip
5.vim /etc/resolv.conf
Nameserver 172.25.254.66
测试:
主dns服务器dig辅助dns的ip