Linux:DNS服务配置(课堂实验总结)

遇到的问题,都有解决方案,希望我的博客能为你提供一点帮助。

操作系统:rocky Linux 9.5

​一、配置DNS服务器的核心步骤​

步骤 1:安装 BIND 软件​

​检查是否安装​​:

rpm -qa | grep "^bind"
  • 预期输出:显示已安装的 BIND 相关包(如 bind-9.x.xbind-utils)。
  • 若无输出,继续安装。

​安装 BIND​​:

sudo yum install bind bind-utils -y

​作用​​:BIND提供域名解析的基础服务,支持正向/反向解析、主从同步等功能。

问题1:遇到已经安装错了等问题,直接移除就好

sudo yum remove bind

成功结果如下:

步骤 2:配置主文件 /etc/named.conf

​备份原始配置​​:

sudo cp /etc/named.conf /etc/named.conf.bak

​修改主配置​​:

sudo vi /etc/named.conf

 主配置内容:

options {listen-on port 53 { any; };//不清楚自己网段的话直接改anylisten-on-v6 port 53 { ::1; };directory       "/var/named";dump-file       "/var/named/data/cache_dump.db";statistics-file "/var/named/data/named_stats.txt";memstatistics-file "/var/named/data/named_mem_stats.txt";secroots-file   "/var/named/data/named.secroots";recursing-file  "/var/named/data/named.recursing";allow-query     { any; };//不清楚网段的话直接改anyrecursion yes;dnssec-validation yes;managed-keys-directory "/var/named/dynamic";geoip-directory "/usr/share/GeoIP";pid-file "/run/named/named.pid";session-keyfile "/run/named/session.key";/* https://fedoraproject.org/wiki/Changes/CryptoPolicy */include "/etc/crypto-policies/back-ends/bind.config";
};
logging {channel default_debug {file "data/named.run";severity dynamic;};
};zone "." IN {type hint;file "named.ca";
};include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

 步骤 3:定义正向和反向解析区域​

​在 /etc/named.rfc1912.zones 中添加区域​​:

sudo vi /etc/named.rfc1912.zones

​添加正向区域​​:

zone "infosecurity.com" IN {type master;file "infosecurity.com.zone";allow-update { none; };
};

​添加反向区域​​(假设 IP 段为 192.168.0.0/24)(实际需要填自己的)

zone "0.168.192.in-addr.arpa" IN {type master;file "0.168.192.rev";allow-update { none; };
};

步骤 4:创建正向解析文件​

​创建正向区域文件​​:

sudo vi /var/named/infosecurity.com.zone

​内容示例​​:(ip同样改自己的)

$TTL 1D
@       IN SOA  ns.infosecurity.com. admin.infosecurity.com. (2024032101   ; Serial1D           ; Refresh1H           ; Retry1W           ; Expire3H )         ; Minimum TTLIN NS    ns.infosecurity.com.
ns      IN A     192.168.0.106
www     IN A     192.168.0.106

​步骤 5:创建反向解析文件​

​创建反向区域文件​​:(ip同样改自己的)

sudo vi /var/named/0.168.192.rev

​内容示例​​:(ip同样改自己的)


$TTL 1D
@       IN SOA  ns.infosecurity.com. admin.infosecurity.com. (2024032101   ; Serial1D           ; Refresh1H           ; Retry1W           ; Expire3H )         ; Minimum TTLIN NS    ns.infosecurity.com.IN A     192.168.0.106
106     IN PTR   www.infosecurity.com.

步骤 6:设置文件权限​

  1. ​修改文件属组和权限​(暂时不用,如果需要再来设置权限)​:
    sudo chown root:named /var/named/infosecurity.org.zone
    sudo chown root:named /var/named/0.168.192.in-addr.zone
    sudo chmod 640 /var/named/*.zone /var/named/*.rev

​步骤 7:启动并验证 DNS 服务​

  1. ​启动服务​​:

    service named start
    service named restart
  2. ​检查服务状态​​:

    service named status
    • 确认输出包含 Active: active (running)

正确启动应该是这样: 

  


​步骤 8:配置客户端 DNS​

  1. ​修改 /etc/resolv.conf​:
    echo "nameserver 192.168.0.106" > /etc/resolv.conf
    //不行的话就直接
    sudo vi /etc/resolv.conf

野路子方法:(只是为了完成这个实验提供的98%不会错误的方法,实际操作不应该这样)

 先:

 再:

sudo vi /etc/resolv.conf

里边的ip 设成上图红圈内的就行。 


​步骤 9:测试 DNS 解析​

  1. ​正向解析测试​​:

    nslookup www.infosecurity.com
    # 或
    dig www.infosecurity.com
    • 预期输出:返回 192.168.0.106
  2. ​反向解析测试​​:

    nslookup 192.168.0.106
    # 或
    dig -x 192.168.0.106
    • 预期输出:返回 www.infosecurity.com

问题2: 反向解析不成功?

大概率是自己的地址设置错误了,这里也提供一个野路子方法:

第一步:

nslookup www.infosecurity.com
# 或
dig www.infosecurity.com

第二步:

zone "0.168.192.in-addr.arpa" IN {type master;file "192.168.0.rev";allow-update { none; };
};

$TTL 1D
@       IN SOA  ns.infosecurity.com. admin.infosecurity.com. (2024032101   ; Serial1D           ; Refresh1H           ; Retry1W           ; Expire3H )         ; Minimum TTLIN NS    ns.infosecurity.com.IN A     192.168.0.106
106     IN PTR   www.infosecurity.com.

这两部分配置改成红圈内的IP

修改后就可以了,以下是成功结果

 红色部分填入自己的ip

​故障排查​
  1. ​检查日志​​:

    tail -f /var/log/messages
    • 查找 named 相关错误。
  2. ​验证配置文件语法​​:

    named-checkconf /etc/named.conf
    named-checkzone infosecurity.com /var/named/infosecurity.com.zone
    named-checkzone 0.168.192.in-addr.arpa /var/named/192.168.0.rev

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

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

相关文章

搭建一个Spring Boot聚合项目

1. 创建父项目 打开IntelliJ IDEA,选择 New Project。 在创建向导中选择 Maven,确保选中 Create from archetype,选择 org.apache.maven.archetypes:maven-archetype-quickstart。 填写项目信息: GroupId:com.exampl…

若依前后端分离版运行教程、打包教程、部署教程

后端打包教程 注意:需要先运行redis 2、前端运行教程 2.1安装依赖 2.2运行 打开浏览器查看,地址:http://localhost:80 3、前端打包教程 3.1打包 3.2运行打包好的文件,先找到打包好的文件 这是nginx的文件结构 将打包好的文件放到html目录下…

SpringAi 会话记忆功能

在使用chatGPT,豆包等产品后,就会发现他们的会话有“记忆”功能。 那么我们用API接口的话,这个是怎么实现的呢? 属于比较粗暴的方式,把之前的内容与新的提示词一起再次发给大模型。让我们看到他们有记忆功能。 下面介绍…

基于Python的经济循环模型构建与可视化案例

一、代码结构概览 该代码构建了一个包含经济数据生成、可视化分析和政策模拟的交互式经济系统仿真平台,主要包括三大模块: 多部门经济数据生成:模拟包含产业关联的复杂经济数据 增强型可视化:提供多维度的经济数据分析视图 Das…

第十六届蓝桥杯大赛软件赛省赛 Python 大学 B 组 部分题解

题面链接Htlang/2025lqb_python_b 个人觉得今年这套题整体比往年要简单许多,但是G题想简单了出大问题,预估50101015120860,道阻且长,再接再厉 A: 攻击次数 答案:103?181?题目没说明白每回合是…

C++基础精讲-05

文章目录 1.构造函数初始化列表1.1 初始化列表的使用1.2 有参构造函数的默认值 2.对象所占空间大小2.1 大小的计算2.2 内存对齐机制 3. 析构函数3.1 基本概念3.2 总结 4.valgrind工具集4.1 介绍4.2 memcheck的使用 5. 拷贝构造函数5.1 拷贝构造函数定义5.2 浅拷贝/深拷贝5.3 拷…

文章记单词 | 第28篇(六级)

一,单词释义 shirt /ʃɜːt/ n. 衬衫;衬衣commonly /ˈkɒmənli/ adv. 通常地;一般地;普遍地pick /pɪk/ v. 挑选;采摘;捡起;选择;n. 选择;鹤嘴锄;精华com…

安装低版本Pytorch GPU

网上很多教程都是自动安装,不指定版本,其实有大问题。而且torch、torchvision、torchaudio的版本必须是对应,所以一旦版本不对,就可能会出现各种问题。 其实Pytorch官网就已经给出了安装低版本的教程 登入Pytorch官网 点击previo…

2025认证杯挑战赛B题【 谣言在社交网络上的传播 】原创论文讲解(含完整python代码)

大家好呀,从发布赛题一直到现在,总算完成了认证杯数学中国数学建模网络挑战赛第一阶段B题目谣言在社交网络上的传播完整的成品论文。 本论文可以保证原创,保证高质量。绝不是随便引用一大堆模型和代码复制粘贴进来完全没有应用糊弄人的垃圾半…

并发编程--互斥锁与读写锁

并发编程–互斥锁与读写锁 文章目录 并发编程--互斥锁与读写锁1. 基本概念2. 互斥锁2.1 基本逻辑2.2 函数接口2.3示例代码12.4示例代码2 3. 读写锁3.1 基本逻辑3.2示例代码 1. 基本概念 互斥与同步是最基本的逻辑概念: 互斥指的是控制两个进度使之互相排斥&#x…

亲手打造可视化故事线管理工具:开发全流程、难点突破与开发过程经验总结

亲手打造可视化故事线管理工具:开发全流程、难点突破与开发过程经验总结 作为还没入门的业余编程爱好者,奋战了2天,借助AI开发一款FLASK小工具,功能还在完善中(时间轴可以跟随关联图缩放,加了一个用C键控制…

网络攻防技术-虚拟机安装和nmap端口扫描

文章是博主上实验课做的实验和心得体会,有些高深的地方我可能也比较一知半解,欢迎来交流。全文参考课程所习得,纯粹梳理知识点和分享,如有不妥请联系修改。 文章侧重实验部分,也会讲述实验相关的理论知识。理论后期如果…

中断的硬件框架

今天呢,我们来讲讲中断的硬件框架,这里会去举3个开发板,去了解中断的硬件框架: 中断路径上的3个部件: 中断源 中断源多种多样,比如GPIO、定时器、UART、DMA等等。 它们都有自己的寄存器,可以…

动手学深度学习:手语视频在VGG模型中的测试

前言 其他所有部分同上一篇AlexNet一样,所以就不再赘诉,直接看VGG搭建部分。 模型 VGG是第一个采取块进行模块化搭建的模型。 def vgg_block(num_convs,in_channels,out_channels):layers[]for _ in range(num_convs):layers.append(nn.Conv2d(in_ch…

信息学奥赛一本通 1498:Roadblocks | 洛谷 P2865 [USACO06NOV] Roadblocks G

【题目链接】 ybt 1498:Roadblocks 洛谷 P2865 [USACO06NOV] Roadblocks G 【题目考点】 1. 图论:严格次短路径 严格次短路的路径长度必须大于最短路的路径长度。 非严格次短路的路径长度大于等于最短路的路径长度。 【解题思路】 每个交叉路口是一…

Arm CPU安全通告:基于TrustZone的Cortex-M系统面临多重故障注入攻击

安全之安全(security)博客目录导读 目录 一、概述 二、致谢 三、参考文献​​​​​​Black Hat USA 2022 | Briefings Schedule 四、版本历史 一、概述 Arm注意到BlackHat 2022大会官网发布的演讲摘要《糟糕..!我又一次故障注入成功了!——如何突…

【频域分析】包络分析

【频域分析】包络分析 算法配置页面 可以一键导出结果数据 报表自定义绘制 获取和下载【PHM学习软件PHM源码】的方式 获取方式:Docshttps://jcn362s9p4t8.feishu.cn/wiki/A0NXwPxY3ie1cGkOy08cru6vnvc

ElMessage

以下是关于 ElMessage 的详细说明和使用方法: 什么是 ElMessage ElMessage 是 Element Plus 提供的一个全局消息提示组件,用于在页面上显示短暂的消息提示。它可以用于显示成功、警告、错误等不同类型的消息。 基本用法 1. 引入 ElMessage 在使用 E…

全面解析 KaiwuDB 数据库的数据类型

在现代数据库管理系统中,数据类型的选择至关重要。它不仅决定了数据存储的效率,还影响到查询的速度和数据的一致性。KaiwuDB,作为一款开源的分布式数据库,提供了多种数据类型,以适应不同的业务需求和存储要求。本文将全…

【计网】网络交换技术之分组交换(复习自用,重要1)

复习自用的,处理得比较草率,复习的同学或者想看基础的同学可以看看,大佬的话可以不用浪费时间在我的水文上了 另外两种交换技术可以直接点击链接访问相关笔记: 电路交换 报文交换 一、分组交换的定义 1.定义 分组交换&#x…