Linux中的DNS的安装与配置

DNS简介

DNS(DomainNameSystem)是互联网上的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。

DNS使用的是53端口

通常DNS是以UDP这个较快速的数据传输协议来查询的,但是没有查询到完整的信息时,就会再次以TCP这个协议来重新查询所以启动DNS时,会同时启动TCP以及UDP的port53。

域名服务器的类型划分

DNS域名解析的过程

DNS服务器的配置

关于服务端

软件安装包bind
服务名称named
主配置文件/etc/named.conf
数据目录/var/named
端口tcp/53 udp/53

搜索DNS相关软件

dnf search dns

安装

dnf install bind.x86_64 -y

 查看软件对应服务名

rpm -ql bind

rpm命令不了解的可以看看,可以了解一下Linux中的软件管理

Linux中的软件管理还能这样做?!-CSDN博客

火墙放通

注:这一步是在你有启用火墙服务的前提下的

你可以通过下面这条命令来

查看火墙服务是否打开

systemctl status firewalld.service

如果火墙服务已启用则需要执行以下命令:

火墙放通DNS 

firewall-cmd -permanent --add-service=dns

 重新加载火墙服务

firewall-cmd --reload

启用DNS服务 

systemctl enable --now named.service

编辑DNS的配置文件

用vim编辑/etc/named.conf这个文件

vim /etc/named.conf

在主机1的named.conf文件中更改和增加这三处

  1. 监听53端口 原本是监听127.0.0.1,改为any监听所有

  2.  allow-query允许查询项,原本是localhost更改为any,允许所有人查询

  3. 增加项:forwarders {DNS服务器IP;}; 给自己的服务器指路,它允许你的 DNS 服务器将某些查询请求转发到其他 DNS 服务器进行解析

每次修改配置文件后记得重启服务

修改主机1和主机2的域名解析服务器IP地址

分别在主机1和主机2中编辑这个文件:

vim /etc/resolv.conf

在主机1中的named.conf没有做任何修改和配置时,主机2即使将域名服务器改为了主机1的IP,也是不能访问域名网站的

当只改了端口这一项时

重启服务后

在主机2再次访问,会发现被拒绝访问

原因是我们allow-query允许访问项限制了主机2的访问。 

将允许访问的范围改成any

重启服务后

并使用dig进行测试

测试后虽然显示可以正常访问网站,但是访问的速率很慢

高速DNS缓存

通过forwarders指路实现高速DNS缓存

测试访问速率大提升

在经过指路后,得到高速缓存dns的效果后,访问速度大大提升

在主机2(134)上测试访问

同样,在主机2(134)上访问速率也能得到大幅提升

搭建DNS正向解析

主配置文件

在域名不长的情况下,可直接在主配置文件中编写以及维护

子配置文件

如果需要维护的域名较长,则可以在/etc/named.rfc1912.zones这个子配置文件上编写以及维护自己的域名

创建自己的域名.zone文件

复制文件及权限

编写自己的域名.zone文件

注意:每个字符串结束后必须加.否则文件内容会被识别错误。

重启服务

编辑完所有文件后,就可以重启服务刷新配置文件内容

然后就能够访问到自己在dns服务器所手动配置的域名了

部署辅助DNS服务器

安装DNS软件(若已安装可跳过)

注意:这是在主机2(134)上安装的!

编辑配置文件

修改/etc/named.conf

在主机2(134)上的/etc/named.conf这个主配置文件里更改下图红框的这两项

修改/etc/named.rfc1912.zones

然后来到主机2(134)上的/etc/named.rfc1912.zones里,添加橙框这部分,建议复制上面的localhost那一段再做更改

重启服务 

编辑完后务必记得重启

放通火墙

也不要忘了将火墙放通!

更改域名服务器ip地址

主机1

在主机1(132)上的/etc/resolv.conf,改为自己的IP192.168.200.132

主机2 

在主机2(134)上的/etc/resolv.conf,改为自己的IP192.168.200.134

测试访问

辅助DNS的数据同步优化

在132主机1上的/etc/named.rfc1912.zones中增加下图蓝框项

然后我们来到主机1(132)的/var/named/vb.org.zone

在主机1(132)中更改IP或域名和serial值

注意:更改一次域名或IP地址,都需要增量修改serial值来强制其他serial DNS服务器更新自己的信息

增量即是如果当前serial值为2时,你修改了数据后,更改只可以修改为比2大的整数,不可以改成比2小的数字。

修改了ip,并且更改了serial值后,再次测试ping www.vb.org

就可以ping通啦! 

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

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

相关文章

tshark的使用技巧(wireshark的命令行,类似tcpdump):转换格式,设置filter

tshark的使用技巧(wireshark的命令行,类似tcpdump):转换格式,设置filter tshark一般在 C:\Program Files\Wireshark 使用管理员权限 打开cmd tshark -D 列出支持抓包的接口: c:\Program Files\Wiresh…

vscode打开的文件被覆盖/只能打开两个文件(Visual Studio Code)

vscode打开的文件被覆盖/只能打开两个文件(Visual Studio Code) 单击代码文件:是预览模式,只会显示有限的一两个文件,在一个tab里更新显示 双击代码文件:是编辑模式,可以同时显示多个代码文件…

唯创安全优化纸业车间安全环境:门口盲区预警报警器的应用与成效

一、客户现场 客户主要从事于卷烟纸、成型纸、烟草制造业用纸及其他特定用途纸类制品的加工、生产与销售。在其厂区内,叉车频繁作业,车间环境复杂。经实地查看,发现几大安全隐患: 门口拐角隐患:门口拐角处因卷帘门阻…

Debezium快照事件监听器系统设计

Debezium快照事件监听器系统设计 1. 系统概述 1.1 设计目标 为 Debezium 的快照过程提供可扩展的事件监听机制允许外部系统在快照过程中执行自定义逻辑提供线程安全的事件分发机制确保监听器的异常不会影响主快照流程1.2 核心功能 表快照开始事件监听表快照完成事件监听行数据…

Ubuntu 20.04安装及配置docker

在安装docker的过程中主要参考博客:ubuntu20.04 安装docker (详细版) 但是在测试: sudo docker run hello-world 时报错: docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request ca…

第23天-Python Flet 开发指南

环境准备 pip install flet 示例1:基础计数器应用 import flet as ftdef main(page: ft.Page):page.title = "计数器"page.vertical_alignment = ft.MainAxisAlignment.CENTERtxt_number = ft.TextField(value="0", text_align=ft.TextAlign.RIGHT, wid…

牛客网NC21989:牛牛学取余

牛客网NC21989:牛牛学取余 📝 题目描述 ⏱️ 限制条件 时间限制:C/C/Rust/Pascal 1秒,其他语言2秒空间限制:C/C/Rust/Pascal 32 M,其他语言64 M输入范围:两个整数,在int范围内 📥…

unity XCharts插件生成曲线图在UICanvas中

【推荐100个unity插件之22】基于UGUI的功能强大的简单易用的Unity数据可视化图表插件——XCharts3.0插件的使用_unity xcharts-CSDN博客

自动驾驶传感器数据处理:Python 如何让无人车更智能?

自动驾驶传感器数据处理:Python 如何让无人车更智能? 1. 引言:为什么自动驾驶离不开数据处理? 自动驾驶一直被誉为人工智能最具挑战性的应用之一,而其背后的核心技术正是 多传感器融合与数据处理。 一辆智能驾驶汽车,通常搭载: 激光雷达(LiDAR) —— 3D 环境感知,…

MCU 上电不启动的常见原因分析与排查思路

在开发过程中,“MCU 上电不运行”是我们经常遇到的问题之一。但客户对此类问题的描述往往较为模糊,仅简单表示“产品不工作”或“怀疑 MCU 没有运行”,这给我们现场排查带来了较大的挑战。即便工程师到达现场,往往也无法迅速定位问…

React中使用 Ant Design Charts 图表

// 引入 Ant Design Charts 的柱状图组件 Column import { Column } from ant-design/charts;// 定义函数组件 App,用于展示柱状图 function App() {// 数据源:每个对象代表一个柱子,包含类型(type)和销售额&#xff0…

30、WebAssembly:古代魔法——React 19 性能优化

一、符文编译术(编译优化) 1. 语言选择与量子精简 // Rust编译优化 cargo build --target wasm32-wasi --release 魔法特性: • 选择低运行时开销语言(如Rust/C),编译后文件比Swift小4倍 • --rel…

初识计算机网络。计算机网络基本概念,分类,性能指标

初识计算机网络。计算机网络基本概念,分类,性能指标 本系列博客源自作者在大二期末复习计算机网络时所记录笔记,看的视频资料是B站湖科大教书匠的计算机网络微课堂,祝愿大家期末都能考一个好成绩! 视频链接地址 一、…

深入理解 MongoDB 的 _id 和 ObjectId:从原理到实践

在 MongoDB 的世界中,_id 字段和 ObjectId 是每个开发者都必须理解的核心概念。作为 MongoDB 文档的唯一标识符,它们不仅影响着数据库的设计,也直接关系到应用的性能和扩展性。本文将全面剖析 _id 和 ObjectId 的工作原理、实际应用场景以及最…

计算机视觉与深度学习 | Python实现ARIMA-WOA-CNN-LSTM时间序列预测(完整源码和数据

以下是一个结合ARIMA、鲸鱼优化算法(WOA)、CNN和LSTM进行时间序列预测的Python实现框架。由于完整代码和数据量较大,此处提供核心代码结构和示例数据集,您可根据需求扩展。 1. 数据准备(示例数据) 使用airline-passengers.csv(航空乘客数据集): import pandas as pd…

【project】--基于大数据离线数仓技术检测网站流量

文章目录 项目介绍项目指标1)页面浏览量(PV):2)独立访客数(UV):3)每小时环比增长:4)每小时同比增长:5)跳出率(Bounce Rate): 环境搭建 项目介绍 …

Cross-Site Scripting(XSS)

1. XSS介绍 跨站脚本攻击(Cross-Site Scripting)简称XSS,人们经常将跨站脚本攻击(Cross Site Scripting)缩写为CSS,但这会与层叠样式表(Cascading Style Sheets,CSS)的缩…

【HTML-1】HTML骨架标签:构建网页的基础框架

在网页开发的世界中,HTML(超文本标记语言)是构建所有网站的基石。而HTML骨架标签则是这个基石中最基础、最重要的部分,它们构成了每个网页的基本框架。无论你是刚入门的前端开发者,还是经验丰富的全栈工程师&#xff0…

高噪声下扩展边缘检测算子对检测边缘的影响

目录 一、常见的边缘检测算子 二、扩展边缘检测算子对检测边缘的影响 三、结论 一、常见的边缘检测算子 Sobel 算子: Prewitt算子;

Python爬虫之路(14)--playwright浏览器自动化

playwright 前言 ​ 你有没有在用 Selenium 抓网页的时候,体验过那种「明明点了按钮,它却装死不动」的痛苦?或者那种「刚加载完页面,它又刷新了」的抓狂?别担心,你不是一个人——那是 Selenium 在和现代前…