DNS及主从同步方案详解

DNS及主从同步方案详解

一.环境部署
bash 复制代码
centos:
yum install bind bind-utils
ubuntu:
apt-get install bind9 bind9utils bind9-doc

检查配置:
named-checkconf 
检查区域:
named-checkzone "bj.com" /var/named/bj.com.zone

启动:
systemctl start named
常用配置文件:
/etc/named.conf
/etc/named.rfc1912.zones
/var/named/*.zone
/var/named/slaves/*.zone
ubuntu:
/etc/bind/named.conf.options
/etc/bind/named.conf.local
/etc/bind/named.conf.default-zones
二.主从配置(以centos为主)

主:192.168.1.21

从:192.168.1.22

192.168.1.23

192.168.1.7

前提:

①.确保tcp,udp53端口互通

②.修改主服务器的dns为192.168.1.21

③.修改从服务器的dns为192.168.1.21

1.主DNS配置

javascript 复制代码
##主DNS配置文件1/etc/named.conf
options {
        listen-on port 53 { 0.0.0.0; }; //修改到主机IP
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };  //修改为any
        allow-transfer { 192.168.1.22;  //添加从DNS IP
                         192.168.1.23;
                         192.168.1.7; };
        notify			yes;		//配置变更时通知从DNS  
        
        recursion yes;

        dnssec-enable no;  //关闭dns安全验证
        dnssec-validation no;
		forwarders { 8.8.8.8; }; //添加主DNS的上级DNS
javascript 复制代码
##主DNS配置文件2 /etc/named.rfc1912.zones
末尾添加一个区域:
zone "bj.com" IN {
        type master;
        file "bj.com.zone";
        notify yes;
        also-notify { 192.168.1.22;
                      192.168.1.23;
                      192.168.1.7; };
        allow-transfer { 192.168.1.22;
                         192.168.1.23;
                         192.168.1.7; };

2.从DNS配置

bash 复制代码
/etc/named.conf
除了allow-transfer,选项去掉,其他和主一样

/etc/named.rfc1912.zones
//添加同步区域
zone "bj.com"   IN {
        type slave;   
        masters {192.168.1.21; };
        masterfile-format text; //确保同步配置可读
        file "slaves/bj.com.zone";
};

3.域名解析

bash 复制代码
/var/named/bj.com.zone
$TTL 1D
@       IN SOA  master bj.com. (
                                        20240801; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
master  A       192.168.1.21
test IN A       192.168.1.22
*    IN A       192.168.1.23
@    IN A       192.168.1.24
www    IN A     192.168.1.24
tt    IN A      192.168.1.25
kk    IN A      192.168.1.26
三.配置详解及检查工具

域名解析文件种各项记录详解

大多数配置文件的选项官网都有详细解释,

bash 复制代码
转发器:将解析请求转发到指定DNS进行解析
递归查询:当客户端发送查询请求到DNS服务器,如果此服务器无法解决这个请求,
          它会代替客户端继续向其他服务器进行查询,直到得到答案
迭代查询:如果服务器无法解析,它不会为客户端到其他服务器进一步查询,
         而是将其他可能知道答案的DNS服务器地址返回给客户端,由客户端继续向那些服务器进行查询


辅助dns服务器上手动执行同步
rndc reload example.com
检查
dig example.com @辅DNS服务器IP地址
四.windows辅助区域同步

windows server DNS添加辅助区域即可实现区域同步

一般自动同步时时间为15分钟

windows10 主备DNS,一般主DNS服务器没有响应或者超时,2-5s无即会切换到从DNS进行解析

Linux 不配置dns相关服务,一般不会有dns本地缓存

相关推荐
网络安全King13 分钟前
网络安全设备系列--安全隔离网闸
网络·安全·web安全
程序猿小D24 分钟前
第三百三十节 Java网络教程 - Java网络UDP服务器
java·开发语言·网络·网络协议·udp·多线程
半桶水专家27 分钟前
tcpdump抓取流量包详解
网络·测试工具·tcpdump
小流年 °6 小时前
抓包工具Wireshark
网络·测试工具·wireshark
是理不是里_6 小时前
常见的网络协议汇总(涵盖了不同的网络层次)
网络·网络协议
Web极客码8 小时前
如何修复WordPress卡在维护模式
服务器·网络·github
小小小汐-10 小时前
【linux】高级IO
linux·网络
Peter_chq10 小时前
【计算机网络】HTTP协议
linux·c语言·开发语言·网络·c++·后端·网络协议
德希智慧水利水务11 小时前
河道水位流量一体化自动监测系统:航运安全的护航使者
网络·人工智能·算法·信息可视化
小屁孩大帅-杨一凡12 小时前
python获取本地电脑的ip和mac地址
java·服务器·网络·python·tcp/ip