Linux环境下主从DNS服务器正反向部署(完全区域、增量区域传送配置)【超详细!!!】

目录

一.DNS        

二.域名分类

三.域名服务器的类型划分

四.主从DNS服务器部署

1.完全区域传送

1.1安装bind服务

1.2配置主DNS服务器(node1端)

        a.设置dns主配置文件:

        b.设置区域配置文件,正向解析配置:

        c.正向解析的数据配置文件:

        d.设置区域配置文件,反向解析配置:

        e.反向解析的数据配置文件(精简后):

1.3配置从DNS服务器(server端)

        修改主配置文件:

         修改区域配置文件:

1.4重启服务并测试

        a.重启服务

        b.测试

 2.增量区域传送

2.1主服务器node1端操作,修改数据配置文件:

2.2重启服务并测试

        a.重启服务

        b.测试


一.DNS        

DNS(Domain Name System)是互联网上的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。

        正向解析:域名->IP

        反向解析:IP->域名

        DNS 域名解析服务中,从服务器可以从主服务器上获取指定的区域数据文件,从而起到备份解析记录与负载均衡的作用,因此通过部署从服务器可以减轻主服务器的负载压力,还可以提升用户的查询效率

        注意:主从服务器时间同步必须保持一致性、bind最好使用同一版本

二.域名分类

域名可分为三大类:

  • 国家顶级域名:采用ISO3166的规定。如:cn代表中国,us代表美国,uk代表英国,等等。国家域名又常记为ccTLD(country code top-level domains,cc表示国家代码contry-code)。

  • 通用顶级域名:最常见的通用顶级域名有7个,即:com(公司企业),net(网络服务机构),org(非营利组织),int(国际组织),gov(美国的政府部门),mil(美国的军事部门)。

  • 基础结构域名(infrastructure domain):这种顶级域名只有一个,即arpa,用于反向域名解析,因此称为反向域名。

三.域名服务器的类型划分

        根据域名服务器起的作用,可以把域名服务器划分为以下类型:根域名服务器(最高层次的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址 )、顶级域名服务器(负责管理在该顶级域名服务器注册的二级域名 权限域名服务器(负责一个“区”的域名服务器 本地域名服务器主从DNS服务器、缓存DNS服务器(不负责解析域,只是缓存域名解析的结果

四.主从DNS服务器部署

        主从DNS服务器:为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保存,其中的一个就是主DNS服务器(Master name server),负责解析至少一个域。其他的是辅助(从)DNS服务器(Slave name server):负责解析至少一个域,是主DNS服务器的辅助。当主域名服务器出故障时,辅助域名服务器可以保证DNS的查询工作不会中断。主域名服务器定期把数据复制到辅助域名服务器中,而更改数据只能在主域名服务器中进行。这样就保证了数据的一致性。

1.完全区域传送

        将一个区域文件复制到多个从服务器上的过程称为区域传送,将主服务器的所有信息全部复制到从服务器中,称为完全区域传送,即复制整个区域文件

设备IP系统
主服务器192.168.74.129RHEL9.1
从服务器192.168.74.128RHEL9.1
测试端192.168.74.130RHEL9.1

1.1安装bind服务

[root@node1 ~]# yum install bind -y
[root@server ~]# yum install bind -y

1.2配置主DNS服务器(node1端)

        a.设置dns主配置文件:
[root@node1 ~]# vim /etc/named.conf
    listen-on port 53 { 192.168.74.129; };    #主服务器上192.168.74.129在监听53号端口
    ......
    allow-query   { any; };    #代表允许任何地址都可以进行地址查询

        b.设置区域配置文件,正向解析配置:
[root@node1 ~]# vim /etc/named.rfc1912.zones   
    zone "openlab.com" IN {    
        type master;
        file "openlab.com.zone";
        allow-transfer { 192.168.74.128; };    #改为同步模式,格式为allow-transfer { 从服务器的IP地址; };
    };
        c.正向解析的数据配置文件:
[root@node1 named]# ls
    data      named.empty      openlab.com.zone
    dynamic   named.localhost  slaves
    named.ca  named.loopback
[root@node1 named]# cp  -a  named.localhost openlab.com.zone
[root@node1 named]# vim openlab.com.zone
    $TTL 1D
    openlab.com.    IN SOA  ns.openlab.com. alice.126.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
    openlab.com.            IN      NS      ns.openlab.com.
    openlab.com.            IN      NS      slave.openlab.com.

    ns.openlab.com.         IN      A       192.168.74.129
    slave.openlab.com.      IN      A       192.168.74.128

    www.openlab.com.        IN      A       192.168.74.129
    ftp.openlab.com.        IN      A       192.168.74.129
    bbs.openlab.com.        IN      A       192.168.74.129
        d.设置区域配置文件,反向解析配置:
[root@node1 ~]# vim /etc/named.rfc1912.zones   
   zone "74.168.192.in-addr.arpa" IN {    # # 区域名使用倒置的网段号+.in-addr.arpa组成
        type master;
        file "192.168.74.arpa";     # 数据配置文件名使用网段号+.arpa组成
        allow-transfer { 192.168.74.128; };
    };
        e.反向解析的数据配置文件(精简后):
[root@node1 named]# vim /etc/named.rfc1912.zones 
[root@node1 named]# ls
    data     named.ca     named.localhost  openlab.com.zone
    dynamic  named.empty  named.loopback   slaves
[root@node1 named]# cp  -a  named.loopback  192.168.74.arpa
[root@node1 named]# vim 192.168.74.arpa 
    $TTL 1D
    @       IN SOA  ns.openlab.com. jenny.qq.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
            NS      ns.openlab.com.
    129     IN      PTR     ns.openlab.com.
    128     IN      PTR     slave.openlab.com.

    129     IN      PTR     www.openlab.com.
    129     IN      PTR     ftp.openlab.com.
    129     IN      PTR     bbs.openlab.com.
    129     IN      PTR     mail.openlab.com.

1.3配置从DNS服务器(server端)

        修改主配置文件:
[root@server ~]# vim /etc/named.conf
    options {
        listen-on port 53 { 192.168.74.128; };  
 		……
        allow-query     { any; };
         修改区域配置文件:
[root@server ~]# vim /etc/named.rfc1912.zones 
    zone "openlab.com" IN {
        type slave;    # 服务类型变更为从
        file "slaves/openlab.com.zone";     # 从服务器的数据配置文件存储位置必须为slaves目录下
        masters { 192.168.74.129; };    # 设置主服务器的IP
    };
    zone "74.168.192.in-addr.arpa" IN {
        type slave;
        file "slaves/192.168.74.arpa";
        masters { 192.168.74.129; };
    };

1.4重启服务并测试

        a.重启服务
[root@node1 named]# systemctl restart named
[root@server slaves]# systemctl restart named
        b.测试

        在node2上修改DNS服务器为node1端或server端的IP地址

[root@node2 ~]# vim /etc/NetworkManager/system-connections/ens160.nmconnection
    [connection]
    id=ens160
    uuid=ba57a0fb-42b3-3723-b214-d4434b8cd456
    type=ethernet
    autoconnect-priority=-999
    interface-name=ens160
    timestamp=1692415997

    [ethernet]

    [ipv4]
    address1=192.168.74.130/24,192.168.74.2
    dns=192.168.74.128;    #修改DNS服务器的IP地址
    method=manual

    [ipv6]
    addr-gen-mode=eui64
    method=auto

        nslookup 命令主要用来诊断域名系统 (DNS) 基础结构的信息。查询DNS的记录,查询域名解析是否正常,在网络故障时用来诊断网络问题。

 2.增量区域传送

2.1主服务器node1端操作,修改数据配置文件:

[root@node1 named]# vim openlab.com.zone
    $TTL 1D
    openlab.com.    IN SOA  ns.openlab.com. alice.126.com. (
                                        1       ; serial    #修改,增加,要与之前的值不同,否则从服务器不会更新数据
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
    openlab.com.            IN      NS      ns.openlab.com.
    openlab.com.            IN      NS      slave.openlab.com.
    openlab.com.            IN      MX      8       mail.openlab.com.    #增加

    ns.openlab.com.         IN      A       192.168.74.129
    slave.openlab.com.      IN      A       192.168.74.128

    mail.openlab.com        IN      A       192.168.74.129    #增加
            
    mail.openlab.com.       IN      A       192.168.74.129
    www.openlab.com.        IN      A       192.168.74.129
    ftp.openlab.com.        IN      A       192.168.74.129
    bbs.openlab.com.        IN      A       192.168.74.129
    www1.openlab.com.       IN      CNAME   www.openlab.com.    #增加

2.2重启服务并测试

        a.重启服务
[root@node1 named]# systemctl restart named
[root@server slaves]# systemctl restart named
        b.测试

        在node2上测试:

 可以看到增加的域名可以查询出对应的IP地址

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DNS主从服务器配置步骤如下: 1. 在主服务器上安装DNS服务,例如BIND。 2. 配置服务器的DNS区域文件,包括域名解析记录和SOA记录。 3. 在主服务器配置允许从服务器进行区域传输的设置。 4. 在从服务器上安装DNS服务,例如BIND。 5. 在从服务器配置服务器的IP地址。 6. 在从服务器配置DNS区域文件的存储路径。 7. 在从服务器配置DNS区域文件的类型和名称。 8. 在从服务器配置DNS区域文件的传输类型为从主服务器传输。 9. 在主服务器上测试DNS配置是否正确。 以下是一个示例配置文件: 主服务器配置文件: ``` // named.conf options { directory "/var/named"; allow-transfer {192.168.1.2;}; // 允许从服务器IP地址 }; zone "example.com" IN { type master; file "example.com.zone"; allow-transfer {192.168.1.2;}; // 允许从服务器IP地址 }; // example.com.zone $TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 2019010101 ; serial 3600 ; refresh 1800 ; retry 604800 ; expire 86400 ; minimum TTL ) @ IN NS ns1.example.com. @ IN NS ns2.example.com. ns1 IN A 192.168.1.1 ns2 IN A 192.168.1.2 www IN A 192.168.1.3 ``` 从服务器配置文件: ``` // named.conf options { directory "/var/named"; }; zone "example.com" IN { type slave; file "slaves/example.com.zone"; masters {192.168.1.1;}; // 主服务器IP地址 }; // slaves/example.com.zone $TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 2019010101 ; serial 3600 ; refresh 1800 ; retry 604800 ; expire 86400 ; minimum TTL ) @ IN NS ns1.example.com. @ IN NS ns2.example.com. ns1 IN A 192.168.1.1 ns2 IN A 192.168.1.2 www IN A 192.168.1.3 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值