RedHat9 | 配置转发DNS服务器

news2024/11/17 13:53:18

一、实验环境

1、介绍

转发服务器(Forwarding Server)接收查询请求,但不直接提供DNS解析,而是将所有查询请求发送到另外的DNS服务器,将查询的结果返回后保存到缓存中。如果没有指定转发服务器,DNS服务器会直接使用根区域记录,先根服务器发送查询,这样许多非常重要的DNS信息都会暴露到Interne上。

转发服务器分为两种类型

  • 完全转发服务器:将所有区域的DNS查询请求发送到其它DNS服务器。
  • 条件转发服务器:允许DNS服务器根据特定的条件(域名、IP地址、查询类型等)将查询请求转发给不同的上游DNS服务器。

转发器的注意事项

  1. 转发器的查询模式必须允许递归查询,否则无法正确完成转发
  2. 转发服务器列表如果为多个DNS服务器,则会依次尝试,知道查询到信息为止
  3. 避免转发器嵌套,如果在Server1上配置DNS转发到Server2,则避免在Server转发到Server3

DNS的配置文件

  • 全局配置文件:/etc/named.conf
  • 主配置文件:/etc/named.rfc1912.zones
  • 正反向区域解析文件:/var/named/xxx

2、拓扑图

正向记录反向记录备注
www.meaauf.com192.168.1.11web服务器
ftp.meaauf.com192.168.1.12ftp服务器

在这里插入图片描述

二、主DNS配置

1、安装DNS服务

dnf -y install bind

在这里插入图片描述

2、修改全局配置文件

vim /etc/named.conf

修改下列内容

listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query     { any; };
dnssec-validation no;

#		managed-keys-directory "/var/named/dynamic";
#       geoip-directory "/usr/share/GeoIP";
#       pid-file "/run/named/named.pid";
#       session-keyfile "/run/named/session.key";

在这里插入图片描述
在这里插入图片描述

3、修改主配置文件

编辑主配置文件

vim /etc/named.rfc1912.zones

追加以下内容

zone "meaauf.com" IN {
        type master;
        file "meaauf.com.zone";
};
zone "1.168.192.in-addr.arpa" IN {
        type master;
        file "meaauf.com.ref";
};

新建正向区域解析文件

cp -p /var/named/named.localhost /var/named/meaauf.com.zone
vim /etc/named/meaauf.com.zone

修改为下列内容

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       192.168.1.1
www    A       192.168.1.1
ftp      A       192.168.1.2

新建反向区域解析文件

cp -p /var/named/named.loopback /var/named/meaauf.com.ref
vim /var/named/meaauf.com.ref

修改为下列内容

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       192.168.1.1
1       PTR     www.meaauf.com.
2       PTR     ftp.meaauf.com.

开启服务并加入开机自启,调整防火墙规则

systemctl enable --now named.service
firewalld-cmd --add-service=dns --permanent
firewalld-cmd --reload

三、配置转发DNS服务器类型为完全转发

1、配置IP地址,将DNS指向主DNS服务器

nmcli connection modify ens160 ipv4.method ipv4.addresses 192.168.1.2/24 ipv4.dns 192.168.1.1
nmcli connection modify up ens160

在这里插入图片描述

2、安装DNS服务

dnf -y install bind

在这里插入图片描述

3、修改全局配置文件

vim /etc/named.conf

在这里插入图片描述
在这里插入图片描述

开启服务并加入开机自启,调整防火墙规则

systemctl enable --now named.service
firewalld-cmd --add-service=dns --permanent
firewalld-cmd --reload

四、客户端配置

1、配置IP地址和,将DNS指向转发DNS服务器

nmcli connection modify ens160 ipv4.method ipv4.addresses 192.168.1.10/24 ipv4.dns 192.168.1.2
nmcli connection modify up ens160

在这里插入图片描述

2、使用nslookup测试DNS

nslookup
> www.meaauf.com
> ftp.meaauf.com
> 192.168.1.1

在这里插入图片描述

五、如果配置转发DNS服务器类型为条件转发

1、修改全局配置文件,将完全转发语句删除

vim /etc/named.conf

修改为下图
在这里插入图片描述
在这里插入图片描述

2、修改主配置文件

vim /etc/named.rfc1912.zones

在文件末尾追加以下内容

zone "meaauf.com" IN {                   	# 指定转发区域
        type forward;						# 指定区域为条件转发类型
        forwarders { 192.168.1.1; };		# 设置转发服务器列表
};

重启DNS服务

systemctl restart named

3、使用nslookup测试DNS

nslookup
> www.meaauf.com
> ftp.meaauf.com

在这里插入图片描述

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

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

相关文章

Springboot+Vue项目-基于Java+MySQL的交通管理在线服务系统(附源码+演示视频+LW)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:Java毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计 &…

AI--构建检索增强生成 (RAG) 应用程序

LLM 所实现的最强大的应用之一是复杂的问答 (Q&A) 聊天机器人。这些应用程序可以回答有关特定源信息的问题。这些应用程序使用一种称为检索增强生成 (RAG) 的技术。 典型的 RAG 应用程序有两个主要组件 索引:从源中提取数据并对其进行索引的管道。这通常在线下…

FRAUDARCatchSync算法简介

参考:https://blog.51cto.com/u_15127663/2778705 1. 背景 Fraudar 要解决的问题是:找出社交网络中最善于伪装的虚假用户簇。虚假用户会通过增加和正常用户的联系来进行伪装,而这些伪装(边)会形成一个很密集的子网络,可以通过定义…

数据结构(二)单链表

一、链表 (一)概念 逻辑结构:线性 存储结构:链式存储,在内存中不连续 分为有头链表和无头链表 同时又细分为单向、循环、双向链表 (二)有头单向链表示意图 以下数据及地址只是为了方便理解…

STM32_ADC

1、ADC简介 ADC,即Analog-Digital Converter,模拟-数字转换器。 ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁。 12位逐次逼近型ADC,1us转换时间。 输入电压范围:0~3.3…

MySQL数据库单表查询中查询条件的写法

1.使用比较运算符作为查询条件 ; !; >; >; <; <; 如上图所示&#xff0c;可以使用命令select 字段&#xff0c;字段 from 表名 where Gender “M”; 即挑选出Gender “M” 的教师&#xff0c; 如上图所示&#xff0c;可以使用命令select 字段&#xff0c;…

fastadmin 树状菜单展开,合并;简要文件管理系统界面设计与实现

一&#xff0c;菜单合并效果图 源文件参考&#xff1a;fastadmin 子级菜单展开合并、分类父级归纳 - FastAdmin问答社区 php服务端&#xff1a; public function _initialize() {parent::_initialize();$this->model new \app\admin\model\auth\Filetype;$this->admin…

chatGPT预训练模型范例之GPT3系列模型的解密

目录 前言 一、GPT的背景 二、GPT的架构 那么如何实现零样本&#xff08;zero-shot&#xff09;学习呢? 这里我们还是主要来看一下 GPT-3 中所谓的 few-/one-/zero- shot 方式分别是什么意思&#xff1f; 三、GPT的应用 四、GPT3的局限性 前言 近年来&#xff0c;预训练…

分割训练日志的可视化

这一部分主要是将mmdetection训练得到的json文件可视化&#xff0c;代码主要源于github&#xff0c;具体哪一个忘记了&#xff08;readme里面没有原址…&#xff09;是专门做的mmdetection 结果可视化的&#xff0c;非常强&#xff01;&#xff01;。使用时如果出现keyerror的话…

MT3041 多项式变换求值

注意点&#xff1a; 1.使用单调栈 2.用ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);避免超时 3.此题除了ans最好不要用long long&#xff0c;如果a[]和b[]都是long long 类型&#xff0c;可能会超内存 4.ans (ans % p p) % p;防止负数 5.使用秦九韶算法计算指数…

MySQL用户管理操作

用户权限管理操作 DCL语句 一.用户管理操作 MySQL软件内部完整的用户格式&#xff1a; 用户名客户端地址 admin1.1.1.1这个用户只能从1.1.1.1的客服端来连接服务器 admin1.1.1.2这个用户只能从1.1.1.2的客服端来连接服务器 rootlocal host这个用户只能从服务器本地进行连…

ptrade从零开始学习量化交易第11期【ptrade策略引擎简介之on_order_response - 委托主推(可选)】

策略引擎简介 更加详细的调用方法&#xff0c;后续会慢慢整理。 也可找寻博主历史文章&#xff0c;搜索关键词使用方案&#xff0c;比如本文涉及函数on_order_response &#xff01; 感谢关注&#xff0c;咨询开通量化回测与获取实盘权限&#xff0c;欢迎和博主联系&#xf…

经验分享:C++ error:‘syscall’ was not declared in this scope

明明已经加了头文件 #include <sys/syscall.h>#define gettid() syscall(__NR_gettid)但是依旧不能使用 syscall() 函数&#xff0c; 检查源码后&#xff1a; sys/syscall.h 内部表示&#xff0c;他封装了 打开对应的 syscall.h 文件内部依旧没有 syscall()函数的声明…

Vue02-黑马程序员学习笔记

一、今日学习目标 1.指令补充 指令修饰符v-bind对样式增强的操作v-model应用于其他表单元素 2.computed计算属性 基础语法计算属性vs方法计算属性的完整写法成绩案例 3.watch侦听器 基础写法完整写法 4.综合案例 &#xff08;演示&#xff09; 渲染 / 删除 / 修改数量 …

炫酷gdb

在VS里面调试很方便对吧&#xff1f;&#xff08;F5直接调试&#xff0c;F10逐过程调试--不进函数&#xff0c;F11逐语句调试--进函数&#xff0c;F9创建断点&#xff09;&#xff0c;那在Linux中怎么调试呢&#xff1f; 我们需要用到一个工具&#xff1a;gdb 我们知道VS中程…

qt中使用tableWidget不显示表头和内容的可能原因

需求是想要把sqlite数据库中的内容通过tableWidget显示出来&#xff0c;但是在使用过程中发现了一些问题 使用ui->tableWidget->setHorizontalHeaderLabels设置表头的时候&#xff0c;发现怎么样都不显示表头&#xff0c;参考这篇文章&#xff0c;应该使用ui->tableW…

Sping6 笔记(一)【优秀的轻量级框架】

Spring6 介绍&#xff1a; 发布时间&#xff1a;2022年11月Spring 框架是一款优秀的轻量级开源框架&#xff0c;为了解决企业应用开发的复杂性而出现Spring 框架的用途&#xff1a;服务器端的开发特点&#xff1a;简单性、可测试性、松耦合性 学习 Spring6 的前置知识&#x…

react组件中的共享数据

在前面的示例中&#xff0c;每个 MyButton 都有自己独立的 count&#xff0c;当每个按钮被点击时&#xff0c;只有被点击按钮的 count 才会发生改变&#xff1a; 然而&#xff0c;你经常需要组件 共享数据并一起更新。 为了使得 MyButton 组件显示相同的 count 并一起更新&…

Socket同步通讯

目录 引言 1. 建立连接 2. 数据传输 3. 同步机制 4. 处理延迟 5. 安全性 6、一对一Socket同步通讯 客户端 代码分析 服务端 代码分析 7、服务端操作 1、首先我们先运行客户端代码 2、服务端点击Connect连接客户端 3、服务端输入信息传输到客户端 4、断开连接 引…

芯片设计公司外协ERP数字化运营:科技与管理的融合

随着信息技术的快速发展&#xff0c;ERP(企业资源计划)系统已经成为现代企业管理不可或缺的一部分。在芯片设计行业&#xff0c;由于产品的复杂性、技术的高要求以及市场的快速变化&#xff0c;外协ERP数字化运营显得尤为重要。 芯片设计公司的外协ERP数字化运营&#xff0c;主…