1. DNS根区备份服务器意义
DNS 根服务器是 DNS 系统的起点,它存储了顶级域名服务器的信息,包括通用顶级域(gTLD)和国家代码顶级域(ccTLD)的域名服务器地址。当用户输入一个域名时,本地 DNS 解析器首先向 DNS 根服务器查询,获取顶级域名服务器的地址。然后,再向该顶级域名服务器查询,逐级向下,直到获得最终的目标服务器的 IP 地址。因此,DNS 根服务器在域名解析的过程中起到了至关重要的作用。
DNS根区备份服务器(也叫根区副本服务器)可以在全球13个DNS 根服务器访问中断时候提供根区解析功能。
2. 功能
DNS根区备份服务器是一个权威DNS服务器,提供DNS root的解析查询功能。根区副本配置为非递归、根区zone 从模式。
根区备份服务器定期从13个DNS根服务器或国内根镜像服务器同步root zone文件。
3. 软件部署
笔者使用bind-9.18.4源码搭建DNS根区备份服务器,过程如下:
tar -xf bind-9.18.4.tar.xz
cd /tmp/bind-9.18.4
./configure -prefix=/usr/local/named --enable-pthread-rwlock --disable-doh
make -j4 && make install
4. 软件操作
启动与停止
- 启动:/usr/local/named/sbin/named -u bind -c /usr/local/named/etc/named.conf
- 停止:/usr/local/named/sbin/rndc stop (或者kill)
- debug方式启动: /usr/local/named/sbin/named -g -u bind -c /usr/local/named/etc/named.conf
重载配置文件
/usr/local/named/sbin/rndc reload
查看软件状态
/usr/local/named/sbin/rndc status
查看统计信息
/usr/local/named/sbin/rndc stats
统计信息保存在/var/log/named/named.stats文件中
根区文件重新同步
/usr/local/named/sbin/rndc retransfer . //不管有无更新,立即重新下载root.zone文件
/usr/local/named/sbin/rndc refresh . //如有更新,立即下载root.zone文件
查看根区
/usr/local/named/sbin/rndc zonestatus . //包括:当前根区zone的序列号、刷新时间、过期时间等
查看当前的根服务器信息
/usr/local/named/sbin/rndc showzone .
在线更新根服务器的配置
不用重启服务,更新根服务器IP
/usr/local/named/sbin/rndc modzone . IN root '{type slave; file "/usr/local/named/etc/root.zone"; masters {x.x.x.x; x.x.x.x;};notify no;};'
5. 日志
zone文件同步日志(原始)
有in和out两种,根区副本只有in一种(从信通院同步root zone文件)
/var/log/named/xferin.log
日志格式如下:
6. 白名单配置
match-clients 缺省配置any,允许所有IP请求root解析。现网部署时若防火墙限制了这里可不配,若防火墙未配置,该字段配置所有递归服务器的递归IP,用分号分割。
示例:
view root {
match-clients { 219.143.125.12; 124.23.4.12; 2001:2345::12ad};
.....
};