当前位置: 首页 > news >正文

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; };//不清楚自己网段的话直接改any
        listen-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; };//不清楚网段的话直接改any
        recursion 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   ; Serial
                    1D           ; Refresh
                    1H           ; Retry
                    1W           ; Expire
                    3H )         ; Minimum TTL
        IN 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   ; Serial
                    1D           ; Refresh
                    1H           ; Retry
                    1W           ; Expire
                    3H )         ; Minimum TTL
        IN 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   ; Serial
                    1D           ; Refresh
                    1H           ; Retry
                    1W           ; Expire
                    3H )         ; Minimum TTL
        IN 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

相关文章:

  • 怎么免费下载GLTF/GLB格式模型文件,还可以在线编辑修改
  • instructor 库实现缓存
  • 【C#】.NET 8适配器模式实战:用C#实现高可用系统集成与接口桥接艺术
  • AutoGen参数说明
  • Kubernetes中的Label和Selector核心作用与应用场景
  • AI相关视频
  • 字符串与栈和队列-算法小结
  • 驱动开发硬核特训 · Day 10 (理论上篇):设备模型 ≈ 运行时的适配器机制
  • c++中的this
  • 用java代码如何存取数据库的blob字段
  • 02 - spring security基于配置文件及内存的账号密码
  • 设计模式 --- 访问者模式
  • 【LeetCode】算法详解#4 ---合并区间
  • 进程线程回顾
  • Pinia最基本用法
  • Nginx基础讲解
  • ros2-rviz2控制unity仿真的6关节机械臂,探索从仿真到实际应用的过程
  • 论文精度:HeightFormer:基于Transformer的体素高度预测在路边3D目标检测中的应用
  • flutter 桌面应用之右键菜单
  • 【Cursor 】Cursor 安装与配置指南:从零开始的高效开发之旅
  • 俄乌刚谈完美国便筹划与两国领导人通话,目的几何?
  • 以色列媒体:哈马斯愿意释放部分人员换取两个月停火
  • 经济日报:人工智能开启太空经济新格局
  • 盐城经济技术开发区党工委书记王旭东接受纪律审查和监察调查
  • 武康大楼再开发:一栋楼火还不够,要带火街区“朋友圈”
  • 3月中国减持189亿美元美债、持仓规模降至第三,英国升至第二