CentOS 域名解析备份与恢复指南
一、先明确你的场景
二、BIND 权威 DNS 的备份与恢复(推荐做法)
日常离线备份(适用于所有版本)
# 配置文件
sudo cp -p /etc/named.conf /etc/named.conf.bak_$(date +%F)
sudo cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak_$(date +%F)
# 区域文件(按实际文件名备份)
sudo cp -p /var/named/example.com.zone /var/named/example.com.zone.bak_$(date +%F)
sudo cp -p /var/named/1.168.192.in-addr.arpa /var/named/1.168.192.in-addr.arpa.bak_$(date +%F)
# 打包归档
sudo tar czvf dns_backup_$(date +%F).tar.gz \
/etc/named.conf* /etc/named.rfc1912.zones* /var/named/*.zone /var/named/*.arpa
sudo named-checkconf
sudo named-checkzone example.com /var/named/example.com.zone
rsync -avz dns_backup_$(date +%F).tar.gz user@backup:/path/
# 或
scp dns_backup_$(date +%F).tar.gz user@backup:/path/
sudo tar xzvf dns_backup_2025-12-23.tar.gz -C /
sudo chown -R root:named /var/named/*.zone /var/named/*.arpa
sudo named-checkconf
sudo systemctl restart named
说明:BIND 的主配置文件通常为 /etc/named.conf,区域文件位于 /var/named/;备份时保持文件属主属组为 root:named、权限 640 更安全。
主从复制作为“热备份”(生产推荐)
zone "example.com" IN {
type master;
file "example.com.zone";
allow-transfer { 192.0.2.11; }; # 从服务器 IP
};
zone "example.com" IN {
type slave;
file "slaves/example.com.zone";
masters { 192.0.2.10; }; # 主服务器 IP
};
dig @192.0.2.11 example.com soa
ls /var/named/slaves/
说明:主从架构能把主 DNS 的区域数据实时复制到从 DNS,从节点即可作为备份/只读查询节点使用。
三、dnsmasq 的备份与恢复
sudo tar czvf dnsmasq_backup_$(date +%F).tar.gz /etc/dnsmasq.conf /etc/dnsmasq.d/ /etc/dnsmasq/
sudo tar xzvf dnsmasq_backup_$(date +%F).tar.gz -C /
sudo systemctl restart dnsmasq
说明:dnsmasq 默认不启用 BIND 式 zone 传输;若你自定义了包含正向/反向区域的配置,也请一并纳入备份。
四、DNS 客户端配置的备份
sudo cp -p /etc/resolv.conf /etc/resolv.conf.bak_$(date +%F)
sudo cp -p /etc/resolv.conf.bak_2025-12-23 /etc/resolv.conf
五、自动化与验证建议