修改主从服务器,搭建BIND主从服务器

参考

基础概念

主从服务

Primary DNS Server

一个域的主服务器保存着该域的zone文件. 该域所有的配置和更改都是在主服务器上进行.

Secondary DNS Server

一个域的从服务器通常作为冗余负载使用, 从该域的主服务器上同步zone文件. 从服务器不会进行任何信息的更改, zone文件的修改只能在主DNS服务器上进行, 所有的修改都由主服务器同步.

区域传送

AXFR

第一次传送区域文件, 通常是传送完整的区域文件, 这叫作“完全区域传送” .

IXFR

后续传送区域文件, 通常是传送增量的区域文件, 这叫作“增量区域传送”.

区域文件, 一方面是定期由从服务器去向主服务器询问和拉取; 一方面当主服务器发生更新时, 会向从服务器发送更新通知, 让从服务器来拉取.

如果主服务器出现故障, 不响应从服务器的询问, 经过一段时间的尝试, 发现仍然没有响应, 则从服务器不会取而代之, 而是不再对DNS请求做应答, 并且放弃解析服务.

安全控制

访问控制列表

build-in ACLs

ACL_NAME

COMMENTany

任何主机

none

无一主机

local

本机

localnet

本机所在网络

ACL Syntax

acl "ACL_NAME" {

IP/PREFIX;

IP/PREFIX;

...

};

安全控制选项

allow-query { ACL_NAMEs;|IP; };

允许哪些主机查询当前DNS服务器

allow-recursion { ACL_NAMEs;|IP; };

允许哪些主机向当前DNS服务器发起递归查询请求

allow-transfer { ACL_NAMEs;|IP; };

允许从服务器拉取区域文件

allow-update { ACL_NAMEs;|IP; };

允许动态更新区域文件内容

操作环境

HOSTNAME

IP ADDRESS

ROLEmac

192.168.199.103

DNS Client

ns0.zakzhu.com

192.168.199.200

Primary DNS Server

ns1.zakzhu.com

192.168.199.201

Secondary DNS Server

配置要求

主机: ns0.zakzhu.com

配置为正反解析的主服务器

配置正向解析区域

配置反向解析区域

主机: ns1.zakzhu.com

配置为正反解析的从服务器

搭建步骤

主服务器

1. 安装bind和bind-utils

[root@ns0 ~]# yum install bind bind-utils -y

2. 修改/etc/named.conf

[root@ns0 ~]# vim /etc/named.conf

options {

listen-on port 53 { 192.168.199.200; };

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; };

recursion yes;

dnssec-enable no;

dnssec-validation no;

bindkeys-file "/etc/named.root.key";

managed-keys-directory "/var/named/dynamic";

pid-file "/run/named/named.pid";

session-keyfile "/run/named/session.key";

};

... ...

... ...

3. 定义主服务器正反解析区域

[root@ns0 ~]# vim /etc/named.rfc1912.zones

... ...

... ...

zone "zakzhu.com" IN {

type master;

file "zakzhu.com.zone";

allow-update { none; };

allow-transfer { 192.168.199.201; };

};

zone "199.168.192.in-addr.arpa" IN {

type master;

file "199.168.192.in-addr.arpa.zone";

allow-update { none; };

allow-transfer { 192.168.199.201; };

};

4. 编写正向解析区域资源记录

[root@ns0 ~]# cd /var/named/

[root@ns0 named]# touch zakzhu.com.zone

[root@ns0 named]# chmod 640 zakzhu.com.zone && chown root:named !$

[root@ns0 named]# vim zakzhu.com.zone

$TTL 86400

$ORIGIN zakzhu.com.

@ IN SOA ns0.zakzhu.com. hostmaster.zakzhu.com. (

2020031700 ; serial

1H ; refresh (1 hours)

15M ; retry (15 mins)

7D ; expire (7 days)

20M ) ; minimum (20 mins)

IN NS ns0.zakzhu.com.

IN NS ns1.zakzhu.com.

ns0 IN A 192.168.199.200

ns1 IN A 192.168.199.201

www IN A 192.168.199.200

mx1 IN A 192.168.199.200

mx2 IN A 192.168.199.201

web IN CNAME www

@ IN MX 10 mx1

@ IN MX 20 mx2

5. 编写反向解析区域资源记录

[root@ns0 named]# touch 199.168.192.in-addr.arpa.zone

[root@ns0 named]# chmod 640 199.168.192.in-addr.arpa.zone && chown root:named !$

[root@ns0 named]# vim 199.168.192.in-addr.arpa.zone

$TTL 86400

$ORIGIN 199.168.192.in-addr.arpa.

@ IN SOA ns0.zakzhu.com. hostmaster.zakzhu.com. (

2020031700 ; serial

1H ; refresh (1 hours)

15M ; retry (15 mins)

7D ; expire (7 days)

20M ) ; minimum (20 mins)

IN NS ns0.zakzhu.com.

IN NS ns1.zakzhu.com.

200 IN PTR ns0.zakzhu.com.

201 IN PTR ns1.zakzhu.com.

200 IN PTR www.zakzhu.com.

6. 语法检查

[root@ns0 named]# named-checkconf

[root@ns0 named]# named-checkzone -d zakzhu.com zakzhu.com.zone

[root@ns0 named]# named-checkzone -d 199.168.192.in-addr.arpa 199.168.192.in-addr.arpa.zone

7. 启动named

[root@ns0 ~]# systemctl enable named

[root@ns0 ~]# systemctl restart named

从服务器

1. 安装bind和bind-utils

[root@ns1 ~]# yum install bind bind-utils -y

2. 修改/etc/named.conf

[root@ns1 ~]# vim /etc/named.conf

options {

listen-on port 53 { 192.168.199.201; };

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; };

recursion yes;

dnssec-enable no;

dnssec-validation no;

bindkeys-file "/etc/named.root.key";

managed-keys-directory "/var/named/dynamic";

pid-file "/run/named/named.pid";

session-keyfile "/run/named/session.key";

};

... ...

... ...

3. 定义从服务器正反解析区域

[root@ns1 ~]# vim /etc/named.rfc1912.zones

... ...

... ...

zone "zakzhu.com" IN {

type slave;

file "slaves/zakzhu.com.zone";

masters { 192.168.199.200; };

};

zone "199.168.192.in-addr.arpa" IN {

type slave;

file "slaves/199.168.192.in-addr.arpa.zone";

masters { 192.168.199.200; };

};

4. 语法检查

[root@ns1 ~]# named-checkconf

5. 启动named

[root@ns1 ~]# systemctl enable named

[root@ns1 ~]# systemctl restart named

测试服务

1. 模拟主服务器到从服务器的全区域传送

[root@ns1 ~]# tail -f /var/named/data/named.run

[root@ns0 ~]# dig -t axfr zakzhu.com @192.168.199.201

0356650178f1a7c1a196a19eb3f97bdd.png

2683353ed2cb50c3f9af5cfdf6ff7a0b.png

2. 测试针对www.zakzhu.com.的正向解析

测试主服务器

[zak@mac ~ 00:59:32]

$ dig -t a www.zakzhu.com. @192.168.199.200

0d59f239013c4086c0801669fd27e5c2.png

测试从服务器

[zak@mac ~ 01:00:09]

$ dig -t a www.zakzhu.com. @192.168.199.201

e757af9913d2b5e76a864c0bdd344709.png

3. 测试针对www.zakzhu.com.的反向解析

测试主服务器

[zak@mac ~ 01:08:28]

$ dig -t a www.zakzhu.com. @192.168.199.200

26ed9873617f8ccc2886b2c9f438b62c.png

测试从服务器

[zak@mac ~ 01:08:38]

$ dig -x 192.168.199.200 @192.168.199.201

e2b465989a8e9a5613dba2d7c88d94c4.png

4. 测试主服务器新增资源记录后同步情况

## 新增"hr.zakzhu.com."的A记录

[root@ns0 named]# vim zakzhu.com.zone

70f582108eaeecd8ae069adc0ddad73b.png

[root@ns0 named]# named-checkzone -d zakzhu.com zakzhu.com.zone

[root@ns0 named]# rndc reload

[zak@mac ~ 01:26:01]

$ dig -t a hr.zakzhu.com. @192.168.199.201

4e15a18fd89cc35bccd393dd2fb3ee29.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值