主备DNS服务器搭建并验证

目录

[1. 配置静态网络](#1. 配置静态网络)

[2. 配置主备DNS](#2. 配置主备DNS)

[2.1 DNS备服务器(第二个虚拟机)](#2.1 DNS备服务器(第二个虚拟机))

[2.2 两个虚拟机操作](#2.2 两个虚拟机操作)

[2.3 备用服务器(第二个虚拟机)执行](#2.3 备用服务器(第二个虚拟机)执行)

[2.4 两个虚拟机都添加DNS:](#2.4 两个虚拟机都添加DNS:)

[3. 验证](#3. 验证)

[3.1 主DNS服务验证:](#3.1 主DNS服务验证:)

[3.2 备用DNS服务器验证:](#3.2 备用DNS服务器验证:)

[4. 排错](#4. 排错)


主备 DNS 是指在互联网上用于解析域名和 IP 地址之间对应关系的服务器。主 DNS 服务器存储着域名与 IP 地址的映射记录,而备用 DNS 服务器则在主 DNS 服务器发生故障或不可用时接管其工作,确保网络服务的持续性和稳定性。

主备 DNS 的作用包括:

  1. 域名解析:将用户输入的域名翻译成对应的 IP 地址,以便正确路由到目标服务器。
  2. 提高可靠性:通过主备 DNS 架构,即使主 DNS 服务器发生故障,备用 DNS 服务器仍能提供域名解析服务,确保网络的连通性。
  3. 负载均衡:可以将流量分散到多个 DNS 服务器上,减轻单一服务器的压力,提高整体性能。
  4. 安全性:通过主备 DNS 设置不同的安全策略,加强网络安全性,防范 DNS 劫持等攻击。

主备 DNS 服务器的结合可以提高系统的可靠性、稳定性和安全性,是构建一个健壮的网络基础设施的重要组成部分。

本操作两台虚拟机IP地址分别为(192.168.200.20)(192.168.200.30)

1. 配置静态网络

bash 复制代码
#两个虚拟机都执行

systemctl stop firealld

setenforce 0



rpm -qa bind #检查是否安装dns服务

yum install -y bind*    #安装DNS服务

#或: yum install -y bind bind-chroot bind-utils

主配置文件位置:/etc/named.conf

区域配置文件位置:/etc/named.rfc1912.zones

区域数据配置文件模板位置:/var/named/named.localhost

2. 配置主备DNS

1. DNS 主服务器(第一个虚拟机)

bash 复制代码
vi /etc/named.conf
bash 复制代码
vi /etc/named.rfc1912.zones

#可以将自带的zone删掉,重新写

#DNS地址为虚拟机IP地址
bash 复制代码
#  制作区域数据配置文件wq.com
cd /var/named
cp -p named.localhost wq.com
vi /var/named/wq.com

2.1 DNS备服务器(第二个虚拟机)

bash 复制代码
vi /etc/named.conf
bash 复制代码
vi /etc/named.rfc1912.zones

2.2 两个虚拟机操作

bash 复制代码
systemctl start named  #启用主备DNS服务器

#  出错的话就检查vi /etc/named.rfc1912.zones,vi /var/named/wq.com,检查这两个配置文件

2.3 备用服务器(第二个虚拟机)执行

bash 复制代码
cd /var/named/slaves

ls  #如果没有存在文件,就检查配置然后重启named

2.4 两个虚拟机都添加DNS:

首先将主服务和备服务器的ip地址都加到各自的dns服务器配置文件(/etc/resolve.conf)中,注意主服务器必须在备服务器上方,如果有公网的dns服务器则需要将本地服务器放在公网服务器上方。读取/etc/resolve.conf文件的顺序是从上到下,可以解析则停止。

主服务器IP一定要写在备服务器IP上面(从上到下)

3. 验证

bash 复制代码
#  如果没有nslookup命令就下载

yum install -y bind-utils

3.1 主DNS服务验证:

3.2 备用DNS服务器验证:

主服务器停止named服务,用备服务器解析

解析不了就看一下配置文件,然后重启named

关闭主服务器dns服务机械能正反向解析查看是否会切换到备用服务进行解析

主服务器执行:systemctl stop named

自动更换使用192.168.200.30进行解析

(主服务器开启named的时候会自动使用192.168.200.20解析)

(依据/etc/resolv.conf顺序)

4. 排错

named-checkconf -z 文件路径

例如:named-checkconf -z /etc/named.conf

检测文件内容错误

相关推荐
名字还没想好☜10 分钟前
Python itertools 实战:用 groupby、chain、islice 优雅处理大数据流
linux·windows·python·迭代器·itertools
可爱系程序猿41 分钟前
Windows 打印链路诊断:从设备枚举、TCP/IP 端口到 Spooler 服务恢复
网络·网络协议·tcp/ip
IT_陈寒1 小时前
SpringBoot这个分页坑,我踩了三天才爬出来
前端·人工智能·后端
颜酱1 小时前
05 | 召回前置准备:根据业务数据库生成各数据库(读取配置阶段)
前端·人工智能·后端
Wang's Blog1 小时前
Go-Zero项目开发24: 基于Bitmap实现群聊消息已读未读
开发语言·后端·golang
Conan在掘金2 小时前
鸿蒙报错速查:struct 里嵌 namespace 声明就炸,根因 + 真解法
后端
东方小月2 小时前
从零开发一个 Coding Agent(三):EventStream 事件流通道设计与实现
前端·人工智能·后端
卫子miao2 小时前
如何评价当前大语言模型的记忆机制?
后端·架构
神奇小汤圆3 小时前
为什么 AQS 成为 Java 并发的基石?
后端
ziguo11223 小时前
深入浅出 C/C++ 数据类型:从入门到踩坑
linux·c语言·c++·windows·visual studio