rndc可以对本地及远程DNS服务器进行管理、控制而不用重启BIND,配置如下:
1.生成rndc key,用于客户端与服务器进行交互验证:
1 | rndc-confgen -a -u named #生成rndc-key并写入/etc/rndc.key文件 |
Bind服务器配置:
1 2 3 4 5 6 | cat /etc/named.con include "/etc/rndc.key"; #服务器调用rndc.key controls { inet 0.0.0.0 port 953 #如只允许本地rndc管理填写127.0.0.1 allow { 127.0.0.1; 192.168.1.3; } keys { "rndckey"; }; #允许通过rndc管理此DNS的IP、KEY }; |
配置rndc客户端:
1 2 3 4 5 6 7 8 9 10 | cat /etc/rndc.key options { default-key "rndckey"; default-server 192.168.1.2; #要管理的DNS地址,管理本地DNS为127.0.0.1 default-port 953; }; key "rndckey" { #复制为rndc.key内容 algorithm hmac-md5; secret "QERkt5B5BTsy3Zmg5wDzqw=="; }; |
如果有多台DNS服务器,定义不同的服务器及key:
1 2 3 4 5 6 7 | server 192.168.1.3 { key "testkey"; }; server 192.168.1.2 { key "rndckey"; }; |
连接指定服务器:
1 | rndc -s 192.168.1.2 status |
rndc应用参数:
1 2 3 4 5 | rndc status #显示DNS运行状态 rndc reload #重新加载配置文件 rndc reconfig #重新加载named.conf和新的域配置文件 rndc dumpdb #导出缓存到文件 rndc flush #清空缓存 |