debian 11搭建主从DNS

本文详细介绍了如何在Debian11环境下配置DNS主从服务器。首先,安装必要的bind9和dnsutils包。然后,在主服务器上配置named.conf.default-zones文件,设置允许从服务器更新的区域,并创建正向和反向解析配置文件。接着,配置从服务器,指定其为slave类型并指向主服务器。最后,重启DNS服务并进行测试,确保解析正常。通过这种方式,可以实现DNS服务的高可用性和负载均衡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

debian 11搭建主从DNS

环境
NDS主服务器:192.168.1.4
DNS从服务器:192.168.1.5

安装包,主从都安装

apt install -y bind9 dnsutils

配置主服务器

#配置dns
echo "nameserver 192.168.1.4" > /etc/resolv.conf

#主配置文件
cd /etc/bind/
vim named.conf.default-zones
添加以下内容
zone "skills.com" {
	type master;
	allow-update { 192.168.1.5; };
	file "/etc/bind/db.zzz";
};

zone "1.168.192.in-addr.arpa" {
	type master;
	allow-update { 192.168.1.5; };
	file "/etc/bind/db.fff";
};

cp db.local db.zzz
cp db.127 db.fff
#正向解析配置文件
cat db.zzz
;
; BIND data file for local loopback interface
;
$TTL	604800
@	IN	SOA	skills.com. admin.skills.com. (
			      2		; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	skills.com.
@	IN	A	127.0.0.1
@	IN	AAAA	::1
ftp	IN	A	192.168.1.4
www	IN	A	192.168.1.5
#反向解析配置文件
cat db.fff
;
; BIND reverse data file for local loopback interface
;
$TTL	604800
@	IN	SOA	skills.com. admin.skills.com. (
			      1		; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	skills.com.
4	IN	PTR	ftp.skills.com.
5	IN	PTR	www.skills.com.
#配置完成
#重启服务
systemctl restart named.service
#测试
nslookup
> www.skills.com
Server:		192.168.1.4
Address:	192.168.1.4#53

Name:	www.skills.com
Address: 192.168.1.5
> ftp.skills.com
Server:		192.168.1.4
Address:	192.168.1.4#53

Name:	ftp.skills.com
Address: 192.168.1.4
> 192.168.1.4
4.1.168.192.in-addr.arpa	name = ftp.skills.com.
> 192.168.1.5
5.1.168.192.in-addr.arpa	name = www.skills.com.
> exit #退出
#主DNS配置完成

配置从服务器

#配置dns
echo "nameserver 192.168.1.5" > /etc/resolv.conf

#主配置文件
vim named.conf.default-zones
添加以下内容
zone "skills.com" {
	type slave;
	masters { 192.168.1.4; };
	file "/etc/bind/db.zzz";
};

zone "1.168.192.in-addr.arpa" {
	type slave;
	masters { 192.168.1.4; };
	file "/etc/bind/db.fff"};
#重启服务
systemctl restart named.service
#测试
nslookup
> www.skills.com
Server:		192.168.1.5
Address:	192.168.1.5#53

Name:	www.skills.com
Address: 192.168.1.5
> ftp.skills.com
Server:		192.168.1.5
Address:	192.168.1.5#53

Name:	ftp.skills.com
Address: 192.168.1.4
> 192.168.1.4
4.1.168.192.in-addr.arpa	name = ftp.skills.com.
> 192.168.1.5
5.1.168.192.in-addr.arpa	name = www.skills.com.
> exit
#从DNS配置完成

### Debian系统中DNS主从服务器配置教程 #### 配置概述 在Debian系统中配置DNS主从服务器涉及多个步骤,包括编辑配置文件、设置区域传输以及确保时间同步等操作。以下是详细的配置方法。 --- #### 1. 安装BIND软件包 为了实现DNS服务功能,需要先安装`bind9`及其相关工具。 ```bash sudo apt update && sudo apt install bind9 bind9utils bind9-doc -y ``` 此命令会安装必要的DNS服务组件[^2]。 --- #### 2. 编辑主DNS配置文件 进入主DNS服务器的配置目录,并修改`named.conf.local`文件: ```bash sudo nano /etc/bind/named.conf.local ``` 在此文件中定义正向和反向解析区。例如: ```zone zone "example.com" { type master; file "/etc/bind/db.example.com"; }; zone "28.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192"; }; ``` 上述代码片段设置了名为`example.com`的正向解析区和对应的反向解析区[^1]。 --- #### 3. 创建正向与反向数据库文件 创建用于存储记录的数据库文件。对于正向解析区`db.example.com`,其内容可能如下: ```plaintext $TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. IN A 192.168.28.145 ns1 IN A 192.168.28.145 www IN A 192.168.28.145 ``` 而对于反向解析区`db.192`,则应包含以下内容: ```plaintext $TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. 145 IN PTR example.com. ``` 完成之后保存退出并重启BIND服务以应用更改: ```bash sudo systemctl restart bind9 ``` --- #### 4. 设置从DNS服务器 同样地,在从DNS服务器上也需要进行相应的调整。打开`named.conf.local`文件并将之前的主DNS部分更改为从属模式: ```zone zone "example.com" { type slave; masters { 192.168.28.145; }; file "/var/cache/bind/slave.db.example.com"; }; zone "28.168.192.in-addr.arpa" { type slave; masters { 192.168.28.145; }; file "/var/cache/bind/slave.db.192"; }; ``` 这里指定了主DNS IP 地址作为数据源位置[^3]。 --- #### 5. 时间同步的重要性 由于分布式环境中各节点间的时间差异可能导致认证失败等问题,因此建议利用NTP协议来保持所有设备上的时钟一致性。可以通过下面的方式开启ntpdate定时任务或者直接部署ntpd守护进程: ```bash sudo apt-get install ntp ``` --- #### 测试验证 最后一步就是确认整个架构是否正常运作了。可以借助dig命令来进行简单的测试工作: ```bash dig @localhost www.example.com ``` 如果一切顺利的话应该能够看到预期的结果返回上来。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值