Linux(openEuler、CentOS8)企业内网主备DNS服务器搭建

news2025/1/11 20:45:41

本实验环境为openEuler系统<以server方式安装>(CentOS类似,可参考本文)
在这里插入图片描述

知识点

  1. 什么是DNS:DNS服务器,即域名服务器(Domain Name Server),是进行域名和与之相对应的IP地址转换的服务器。它是一种管理名字的方法,通过分层的域名空间,将域名和IP地址相互映射,使得人们能够通过域名访问互联网上的各种资源
    在这里插入图片描述
    在这里插入图片描述

  2. 区域解析库详解:

SOA
Start Of Authority,起始授权记录;一个区域解析库有且仅能有一个SOA记录,必须 位于解析库的第一条记录SOA,是起始授权机构记录,说明了在众多 NS 记录里哪一 台才是主要的服务器。在任何DNS记录文件中,都是以SOA ( Startof Authority )记录 开始。SOA资源记录表明此DNS名称服务器是该DNS域中数据信息的最佳来源。
A(internet Address)
作用,域名解析成IP地址,正向解析
AAAA(FQDN)
–> IPV6
PTR(PoinTeR)
反向解析,ip地址解析成域名
NS(Name Server)
专用于标明当前区域的DNS服务器,服务器类型为域名服务器
CNAME
Canonical Name,别名记录
MX(Mail eXchanger)
邮件交换器
TXT
对域名进行标识和说明的一种方式,一般做验证记录时会使用此项,如:SPF(反垃圾邮件)记录,https验证等
SOA记录与NS记录的区别
NS记录表示域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析;SOA记录设置一些数据版本和更新以及过期时间等信息。

实验

(一)主服务器配置

序号服务器名称IP备注
1dns1192.168.200.113
2dns2192.168.200.114
  1. 安装bind
dnf install -y bind bind-utils
systemctl start named
  1. 修改主配置文件
cd /etc
cp named.conf named.conf.bak
vim /etc/named.conf

在这里插入图片描述

修改配置如下:

		listen-on port 53 { any; };
		allow-query     { any; };		'允许使用本DNS服务的网段:{一般更改为any}'

在这里插入图片描述

  1. 修改named.rfc1912.zones
cd /etc
cp named.rfc1912.zones named.rfc1912.zones.bak
vim /etc/named.rfc1912.zones

配置新增如下:

zone "test.com" IN {
        type master;
        file "test.com.zone";
};
zone "200.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.200.zone";
};

在这里插入图片描述

named-checkconf检查配置文件语法

  1. 新建正向区域配置文件/var/named/test.com.zone
touch /var/named/test.com.hosts
vim /var/named/test.com.hosts

内容如下:

$TTL 1D
@       IN SOA  test.com.       root.test.com. (
                 0      ;serial         #更新序列号
                 1D     ;refresh        #更新时间
                 1H     ;retry          #重试延时
                 1W     ;expire         #失效时间
                 3H)    ;minimum        #无效解析记录的缓存时间
@       IN      NS      dns1.test.com.
dns1    IN      A       192.168.200.113
dns2    IN      A       192.168.200.114

在这里插入图片描述

检查

named-checkzone test.com /var/named/test.com.zone

在这里插入图片描述

  1. 新建反向区域配置文件/var/named/192.168.200.zone
touch /var/named/192.168.200.zone
vim /var/named/192.168.200.zone

内容如下:

$TTL 1D
@       IN SOA  test.com.       root.test.com. (
                 0      ;serial
                 1D     ;refresh
                 1H     ;retry
                 1W     ;expire
                 3H)    ;minimum
@      IN      NS      dns1.test.com.
113    IN      PTR     dns1.test.com.
114    IN      PTR     dns2.test.com.

检查

named-checkzone 12.168.192.in-addr.arpa /var/named/192.168.200.zone

在这里插入图片描述

  1. 重启服务
systemctl restart named
systemctl enable named #设置开机启动
  1. 配置防火墙
firewall-cmd --add-service=dns --permanent
firewall-cmd --reload
firewall-cmd --list-services 

在这里插入图片描述

  1. 本地测试
ping dns1.test.com
ping dns2.test.com

在这里插入图片描述

  1. win客户端测试

配置IP
使用win7 CMD命令测试

ipconfig /flushdns
ping 192.168.200.113
ping dns1.test.com

在这里插入图片描述

在这里插入图片描述

(二)从服务器配置

  1. 安装bind
dnf install -y bind bind-utils
systemctl start named
  1. 修改主配置文件
cd /etc
cp named.conf named.conf.bak
vim /etc/named.conf

在这里插入图片描述

修改配置如下:

		listen-on port 53 { any; };
		allow-query     { any; };		'允许使用本DNS服务的网段:{一般更改为any},也可以写成0.0.0.0/0'

在这里插入图片描述

  1. 修改named.rfc1912.zones
cd /etc
cp named.rfc1912.zones named.rfc1912.zones.bak
vim /etc/named.rfc1912.zones

配置新增如下:

zone "test.com" IN {
       type slave;
       file "slaves/test.com.zone";
       masters { 192.168.200.113; };
};
zone "200.168.192.in-addr.arpa" IN {
          type slave;
          file "slaves/192.168.200.zone";
          masters { 192.168.200.113; };
};

在这里插入图片描述
#上面是正向区域配置部分,test.com 为域名后缀,type slave表明这是从属服务器,file指定文件存储目录,masters{ 192.168.12.11} 指明了主DNS服务器的IP地址。( file “slaves/demo.com.zone”;)

named-checkconf检查配置文件语法

  1. 查看主域名服务器同步过来的文件/var/named/slaves/
systemctl start named
cd /var/named/slaves/
ll

在这里插入图片描述
从dns服务器上已经有主dns服务器同步过来的正向和反向解析文件了

  1. 重启服务
systemctl restart named
systemctl enable named #设置开机启动

在这里插入图片描述

  1. 配置防火墙
firewall-cmd --add-service=dns --permanent
firewall-cmd --reload
firewall-cmd --list-services 

在这里插入图片描述

  1. 本地测试
ping dns1.test.com
ping dns2.test.com

在这里插入图片描述

  1. win客户端测试

配置IP
使用win7 CMD命令测试

ipconfig /flushdns
ping 192.168.200.113
ping dns1.test.com

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1661346.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CTF例题和知识点

[ACTF2020 新生赛]Include 打开靶机发现一个超链接&#xff0c;点击之后出现一段话 “Can you find out the flag?” 查看源码注入&#xff0c;无果 仔细看url&#xff0c;发现有flag.php 根据题目提示&#xff0c;该题应该是文件包含漏洞&#xff0c;因此可以判断出此题是PH…

mysql数据库调优篇章1--日志篇

目录 1.认识数据库中日志的作用2.增加mysql数据库中my.ini 基本配置3.增加my.ini中参数配置4.查看已经执行过的sql语句过去执行时间5.找出慢查询的sql6.常用参数查询命令7.认识慢查询日志记录8.认识通用日志记录&#xff08;记录增删改查操作&#xff09;9.认识二进制文件binlo…

从0到1开发一个vue3+ts项目(一)

1. 环境配置 1.1 安装node 使用官方安装程序 前往 Node.js 官网&#xff1a;访问 Node.js 官网&#xff0c;下载适合你操作系统的安装程序。运行安装程序&#xff1a;下载完成后&#xff0c;双击安装程序并按照提示进行安装。验证安装&#xff1a;安装完成后&#xff0c;在终…

[uniapp] 配置ts类型声明

我想引进图片,但是报错 声明一下就行 TypeScript 支持 | uni-app官网 创建tsconfig.json文件,复制官网的配置 然后在随便一个目录下写一个随便名字的.d.ts文件 例如这样 保存就行 因为ts是默认扫描全部的,所以要按照官网的写法 把不必要的排除掉就行,免得浪费性能

DDS Blockset Shapes Demo

此示例演示DDS模块集Blockset形状演示应用程序。Shapes Demo是一个常见的数据分发服务&#xff08;DDS&#xff09;应用程序&#xff0c;用于介绍DDS概念&#xff0c;你可以使用它发布和订阅以简单形状&#xff08;圆形、方形和三角形&#xff09;表示的主题&#xff0c;并观察…

详解分布式锁

知识点&#xff1a; 单体锁存在的问题&#xff1a; 单体锁&#xff0c;即单体应用中的锁&#xff0c;通过加单体锁&#xff08;synchronized或RentranLock&#xff09;可以保证单个实例并发安全 单体锁是JVM层面的锁&#xff0c;只能保证单个实例上的并发访问安全 如果将单…

vue2结合element-ui实现TreeSelect 树选择功能

需求背景 在日常开发中&#xff0c;我们会遇见很多不同的业务需求。如果让你用element-ui实现一个 tree-select 组件&#xff0c;你会怎么做&#xff1f; 这个组件在 element-plus 中是有这个组件存在的&#xff0c;但是在 element-ui 中是没有的。 可能你会直接使用 elemen…

nginx配置文件和配置命令详解案例

一.nginx.conf配置结构 1.1配置结构图 1.2 nginx中配置nginx.conf配置内容 #user nobody; user root; # 表示worker进程是有root用户去执行的 worker_processes 2; events {# 默认使用epolluse epoll;# 每个worker链接最大数据worker_connections 1024; } http {include …

Java入门基础学习笔记14——数据类型转换

类型转换&#xff1a; 1、存在某种类型的变量赋值给另一种类型的变量&#xff1b; 2、存在不同类型的数据一起运算。 自动类型转换&#xff1a; 类型范围小的变量&#xff0c;可以直接赋值给类型范围大的变量。 byte类型赋值给int类型&#xff0c;就是自动类型转换。 pack…

【MySQL基本查询(下)】

文章目录 一、update案例 二、Delete案例注意&#xff1a;delete 全表数据的行为慎用&#xff01;truncate 三、插入查询结果案例 四、了解一些函数1.count函数2.sum函数3. avg函数4.max函数5. min函数 五、group by子句的使用案例having和where 一、update 该关键字的功能就是…

基于SpringBoot的全国风景区WebGIS按省展示实践

目录 前言 一、全国风景区信息介绍 1、全国范围内数据分布 2、全国风景区分布 3、PostGIS空间关联查询 二、后台查询的设计与实现 1、Model和Mapper层 2、业务层和控制层设计 三、WebGIS可视化 1、省份范围可视化 2、省级风景区可视化展示 3、成果展示 总结 前…

C++ 抽象与封装

一 抽象 抽象实例&#xff1a;时钟 数据抽象&#xff1a; 具有表面当前时间的时、分、秒 行为抽象&#xff1a; 具有设置时间和显示时间两个最基本的功能。 抽象实例&#xff1a;人 数据抽象&#xff1a;姓名、年龄、性别等。 行为抽象&#xff1a; 生物属性&#xff1a;吃…

Cocos creator实现《战机长空》关卡本地存储功能

Cocos creator实现《战机长空》关卡本地存储功能 Cocos creator在开放小游戏过程中&#xff0c;经常会出现设置关卡&#xff0c;这里记录一下关卡数据本地存储功能。 一、关卡设置数据 假如我们有关卡数据如下&#xff0c; let settings [ { level: 1, // 第1关 score: 0,…

Java类加载器介绍

在Java中&#xff0c;类加载器是一种动态加载类的机制&#xff0c;它负责在运行时查找、加载和链接类文件。当Java应用程序需要创建某个类的对象时&#xff0c;类加载器会在运行时查找该类对应的.class文件&#xff0c;并将其加载到Java虚拟机中。Java类加载器通常分为三层&…

【MQTT】mosquitto 的 “下载、交叉编译、使用” 详细教程,手把手搭建一个MQTT Broker

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; ⏰发布时间⏰&#xff1a;2024-05-11 0…

系统架构设计师 - 计算机组成与体系结构(1)

计算机组成与体系结构 计算机组成与体系结构计算机结构 ★CPU 组成结构运算器组成控制器组成 计算机体系结构冯诺依曼结构哈弗结构 嵌入式芯片&#xff08;了解&#xff09; 存储系统 ★★★★概述Cache主存编址磁盘管理磁盘基本结构与存取过程磁盘优化分布存储磁盘管理 大家好…

C++:多态-重写和重载

重写&#xff08;Override&#xff09;和重载&#xff08;Overload&#xff09;是面向对象编程中常用的两个概念&#xff0c;它们虽然都涉及到方法的定义&#xff0c;但是在实现和使用上有着不同的特点。 重写&#xff08;Override&#xff09;&#xff1a; 重写是指在子类中重…

部署xwiki服务需要配置 hibernate.cfg.xml如何配置?

1. 定位 hibernate.cfg.xml 文件 首先&#xff0c;确保您可以在 Tomcat 的 XWiki 部署目录中找到 hibernate.cfg.xml 文件&#xff1a; cd /opt/tomcat/latest/webapps/xwiki/WEB-INF ls -l hibernate.cfg.xml如果文件存在&#xff0c;您可以继续编辑它。如果不存在&#xff…

Go语言系统学习笔记(一):基础篇

1. 写在前面 公司的新业务开发需要用到go语言&#xff0c;虽然之前没接触过这门语言&#xff0c;但在大模型的帮助下&#xff0c;边看项目边写代码也能进行go的项目开发&#xff0c;不过&#xff0c;写了一段时间代码之后&#xff0c;总感觉对go语言本身&#xff0c;我的知识体…

【SRC实战】合成类小游戏外挂漏洞

挖个洞先 https://mp.weixin.qq.com/s/ZnaRn222xJU0MQxWoRaiJg “以下漏洞均为实验靶场&#xff0c;如有雷同&#xff0c;纯属巧合” 合成类小游戏三个特点&#xff1a; 1、一关比一关难&#xff0c;可以参考“羊了个羊” 2、无限关卡无限奖励&#xff0c;可以参考“消灭星星…