RHCE 搭建DNS域名解析服务器

news2024/12/23 12:43:10

目录

一、前述

1、BIND(Berkeley Internet Name Domain)

2、bind服务中三个关键文件

1)主配置文件/etc/named.conf

2)区域配置文件/etc/named.rfc1912.zones

正向解析

反向解析

3)数据配置文件目录/var/named/

正向解析资源文件/var/named/named.localhost

反向解析资源文件/var/named/named.loopback

3、部署DNS从服务器

二、实验

实验一 正向解析DNS配置

1、服务端操作,编辑bind主配置文件

2、服务端操作,编辑区域配置文件

3、服务端操作,编辑数据配置文件

4、服务端重启服务

5、测试

实验二 反向解析DNS配置

1、服务端操作,编辑bind主配置文件

2、服务端操作,编辑区域配置文件

3、服务端操作,编辑数据配置文件

4、服务端重启服务

5、测试

实验三 部署DNS主从服务器

1、准备工作(预处理)

2、主服务端操作,编辑主配置文件设置监听IP

3、主服务端操作打开区域配置文件

4、主服务端操作,设置正反向解析数据配置文件

5、主服务端操作,重启服务

6、从服务端操作,修改主配置文件

7、从服务端操作,修改区域配置文件,填写主服务器的 IP 地址与要抓取的区域信息,注意此时的服 务类型应该是 slave(从)

8、从服务端操作,重启服务

9、从服务端操作,测试

实验三拓展:增量区域传送

1、主服务端操作,修改数据配置文件

2、主从服务端操作,重启服务

3、从服务端操作,测试


一、前述

1、BIND(Berkeley Internet Name Domain)

        ——是一种全球使用最广泛的、最高效的、最安全的域名解析服务程序

2、bind服务中三个关键文件

/etc/named.conf : 主配置文件,用于设置bind服 务程序的运行

/etc/named.rfc1912.zones: 区域配置文件(zone),用于保存域名和IP地址对应关系文件的所在位置,类似于图书目录,当需要修改域名与IP映射关系时需要在此文件中查找相关文件位置

/var/named 目录:数据配置文件目录,该目录存储保存域名和IP地址映射关系的数据文件

1)主配置文件/etc/named.conf

        options{}        全局参数设置

        logging{}        指定日志记录的分类及其存储目录

        zone{}            设置DNS根服务器的相关内容

        include        

                include "/etc/named.rfc1912.zones"; # 表示当前DNS服务器的区域配置文件位置                            include "/etc/named.root.key";           # 密钥存储文件位置

一般需要修改三部分:

        listen-on port 53 { 127.0.0.1; }; 即监听ip及端口

        allow-query { localhost; }; 允许那些客户端访问

        recursion yes; 是否开启递归查询

2)区域配置文件/etc/named.rfc1912.zones

正向解析
zone "localhost.localdomain" IN { # 正向解析域名
type master; # 服务类型:master表示主服务器,slave表示从服务器,hint根服务器
file "named.localhost"; # 域名与IP地址规则文件存储位置
allow-update { none; }; # 允许那些客户端动态更新本机域名解析
};
# allow-update:允许更新解析库内容,一般关闭
# allow-query: 允许查询的主机,白名单
# allow-tranfter : 允许同步的主机,白名单,常用
# allow-recursion: 允许递归的主机
反向解析
zone "1.0.0.127.in-addr.arpa" IN { 
# 表示127.0.0.1的反向解析配置,IP地址需要倒置书写,只需书写网段即可
type master;
file "named.loopback"; # 反向解析的规则文件保存位置
allow-update { none; };
};

3)数据配置文件目录/var/named/

正向解析资源文件/var/named/named.localhost
$TTL 1D # 设置生存周期时间,为1天,$表示宏定义
@     IN SOA @ rname.invalid. (
# @ :表示zone域,现在表示域名,如baidu.com
# IN SOA : 授权信息开始
# rname.invalid. : 域名管理员的邮箱(不能使用@,使用点替代邮件分隔符@)
        0 ; serial # 序列号,10位以内的整数
        1D ; refresh # 更新频率为1天
        1H ; retry # 失败重试时间为1小时
        1W ; expire # 失效时间1周
        3H ) ; minimum # 缓存时间为3小时
IN    NS ns.域名.
ns    IN A 域名解析服务器IP地址
www   IN A 域名解析服务器IP地址
bbs   IN A 域名解析服务器IP地址
mail  IN A 域名解析服务器IP地址
# A:表示IPv4地址, AAAA表示IPv6地址

A记录:A 代表 Address,用来指定域名对应的 IP 地址,如将 item.taobao.com 指定到 115.238.23.xxx,将 switch.taobao.com 指定到 121.14.24.xxx

MX记录:Mail Exchange,就是可以将某个域名下的邮件服务器指向自己的 Mail Server

NS记录:为某个域名指定 DNS 解析服务器,也就是这个域名由指定的 IP 地址的 DNS 服务器取解析

CNAME 记录:Canonical Name,即别名解析。

TXT 记录:为某个主机名或域名设置说明

反向解析资源文件/var/named/named.loopback
[root@server ~]# vim /var/named/named.loopback
$TTL 1D
@     IN SOA @ rname.invalid. (
                            0 ; serial
                            1D ; refresh
                            1H ; retry
                            1W ; expire
                            3H ) ; minimum
       NS         ns.域名.         # 域名服务器记录,注意结尾的点
       A          域名解析服务器的IP地址
IP地址 PTR         域名.            # PTR 指针记录,用于反向解析

3、部署DNS从服务器

DNS 域名解析服务中,从服务器可以从主服务器上获取指定的区域数据文件,从而起到备份解析记录与负 载均衡的作用,因此通过部署从服务器可以减轻主服务器的负载压力,还可以提升用户的查询效率

 

二、实验

服务端IP                         客户端IP                         网址

192.168.30.132         192.168.30.133         www.openlab.com

[root@server ~]# setenforce 0    
[root@server ~]# systemctl stop firewalld
[root@server ~]# yum install bind -y
[root@server ~]# nmcli c modify ens33 ipv4.method manual ipv4.addresses 192.168.30.132/24 ipv4.gateway 192.168.30.2 ipv4.dns 114.114.114.114
[root@server ~]# nmcli c reload
[root@server ~]# nmcli c up ens33
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/2)
# 客户端设置静态IP
[root@server_node ~]# nmcli c modify ens33 ipv4.method manual ipv4.addresses 192.168.30.133/24 ipv4.gateway 192.168.30.2 ipv4.dns 114.114.114.114
[root@server_node ~]# nmcli c reload
[root@server_node ~]# nmcli c up ens33
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/Act

[root@server_node ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33  查看网卡文件配置

 

实验一 正向解析DNS配置

1、服务端操作,编辑bind主配置文件

[root@server ~]# vim /etc/named.conf
# 需改2行
listen-on port 53 { 192.168.30.132; }; # 本机IP
allow-query { any; };    # any为允许所有主机

2、服务端操作,编辑区域配置文件

[root@server ~]# vim /etc/named.rfc1912.zones
zone "openlab.com" IN {          # 双引号中输入,表示管理那个区域
        type master;
        file "openlab.com.zone"; # 双引号中输入,表示数据配置文件的名称,注意:不写路径
        allow-update { none; };
};

3、服务端操作,编辑数据配置文件

使用拷贝命令将模版文件(/var/named/named.localhost)复制 一份在修改局部

拷贝时需要加-a参数,即拷贝内容及文件属性保证文件内容一致、权限等信息不变

[root@server ~]# cd /var/named/
[root@server named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@server named]# 
[root@server named]# cp -a named.localhost openlab.com.zone
[root@server named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  openlab.com.zone  slaves
[root@server named]# vim openlab.com.zone 

4、服务端重启服务

[root@server named]# systemctl restart named

5、测试

定义客户端,将客户端的dns修改为服务端的IP地址

[root@server_node ~]# nslookup www.openlab.com
Server: 192.168.30.132
Address: 192.168.30.132#53
Name: www.openlab.com
Address: 192.168.30.132

实验二 反向解析DNS配置

1、服务端操作,编辑bind主配置文件

[root@server ~]# vim /etc/named.conf
# 需改2行
    listen-on port 53 { any; }; # any为允许所有主机
    allow-query { 192.168.30.133; }; # 此处也可以写为IP地址

2、服务端操作,编辑区域配置文件

[root@server named]# vim /etc/named.rfc1912.zones

zone "30.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.30.arpa";
        allow-transfer { 192.168.30.133; };
};

3、服务端操作,编辑数据配置文件

[root@server ~]# cd /var/named
[root@server named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@server named]# cp -a named.loopback 192.168.30.arpa
[root@server named]# vim 192.168.30.arpa

4、服务端重启服务

[root@server named]# systemctl restart named

5、测试

实验三 部署DNS主从服务器

设备                         IP                               

主服务器         192.168.30.132                      

从服务器         192.168.30.133

1、准备工作(预处理)

[root@server ~]# setenforce 0
setenforce: SELinux is disabled
[root@server ~]# systemctl stop firewalld
[root@server ~]# yum install bind -y
[root@server ~]# nmcli c modify ens33 ipv4.method manual ipv4.addresses '192.168.30.132/24' ipv4.gateway '192.168.30.2' ipv4.dns '192.168.30.132'
[root@server ~]# nmcli c reload
[root@server ~]# nmcli c up ens33
[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33  # 查看网卡配置
[root@server_node ~]# setenforce 0 
[root@server_node ~]# systemctl stop firewalld
[root@server_node ~]# yum install bind -y 

[root@server_node ~]# nmcli c modify ens33 ipv4.method manual ipv4.addresses 
 192.168.30.133/24' ipv4.gateway '192.168.30.2' ipv4.dns '192.168.30.133'
[root@server_node ~]# nmcli c reload
[root@server_node ~]# nmcli c up ens33

[root@server_node ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33  # 查看网卡配置

2、主服务端操作,编辑主配置文件设置监听IP

[root@server ~]# vim /etc/named.conf

3、主服务端操作打开区域配置文件

[root@server ~]# vim /etc/named.rfc1912.zones

4、主服务端操作,设置正反向解析数据配置文件

# 正向解析
[root@server ~]# cd /var/named
[root@server named]# cp -a named.localhost openlab.com.zone
[root@server named]# vim openlab.com.zone

 

# 反向解析
[root@server ~]# cd /var/named
[root@server named]# cp -a named.loopback 192.168.30.arpa
[root@server named]# vim 192.168.30.arpa 

5、主服务端操作,重启服务

[root@server ~]# systemctl restart named

6、从服务端操作,修改主配置文件

[root@server_node ~]# vim /etc/named.conf 

7、从服务端操作,修改区域配置文件,填写主服务器的 IP 地址与要抓取的区域信息,注意此时的服 务类型应该是 slave(从)

[root@server_node ~]# vim /etc/named.rfc1912.zones 

8、从服务端操作,重启服务

[root@server_node ~]# cd /var/named/slaves
[root@server_node slaves]# ls    # 启动服务前查看解析配置文件为空
[root@server_node slaves]# systemctl start named    # 启动服务后自动拉取
[root@server_node slaves]# ls

9、从服务端操作,测试

确认从服务端的网卡DNS地址修改为自己的IP:192.168.30.133,使从服务器自身也能提供的 DNS 域名解析服务,再进行测试

实验三拓展:增量区域传送

————仅复制区域里变化的文件

1、主服务端操作,修改数据配置文件

[root@server ~]# vim /var/named/openlab.com.zone

2、主从服务端操作,重启服务

[root@server ~]# systemctl restart named
[root@server_node ~]# systemctl restart named

3、从服务端操作,测试

注意:

序号需要比原序号大

更新频率可以改小一点,这样比较快看到实验结果

需要写一条关于从服务器的NS和A记录,不然新增的数据有时能更新有时无法更新

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

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

相关文章

STM32 1-5

目录 STM32简介 点亮PC13LED GPIO LED闪烁 LED流水灯 按键控制LED 光敏传感器控制蜂鸣器 OLED调试工具 OLED显示 EXTI外部中断 对射式红外传感器计次 旋转编码器计次 继续 STM32简介 点亮PC13LED main.c #include "stm32f10x.h" // D…

Hadoop-MapReduce-YarnChild启动篇

一、源码下载 下面是hadoop官方源码下载地址&#xff0c;我下载的是hadoop-3.2.4&#xff0c;那就一起来看下吧 Index of /dist/hadoop/core 二、上下文 在上一篇<Hadoop-MapReduce-MRAppMaster启动篇>中已经将到&#xff1a;MRAppMaster的启动&#xff0c;那么运行M…

如何让wordpress首页只显示某一篇文章全部内容?在您的主页显示选择

大多数WordPress站点首页默认都是显示最新发布的文章列表&#xff0c;不过有些站点比较特殊&#xff0c;只想显示某一篇文章的全部内容&#xff0c;那么应该怎么设置呢&#xff1f; 其实&#xff0c;WordPress后台 >> 设置 >> 阅读 >> 在“您的主页显示”中…

VS+QT 配置Eigen库

1、下载Eigen库&#xff0c;如下&#xff1a; 2、解压到项目目录下&#xff0c;如下&#xff1a; 3、 在C/C中包含文件&#xff0c;如下&#xff1a; 4、在头文件中加入如下代码&#xff1a; 5、测试代码&#xff1a; //.cpp文件 #include "testEigen.h"testEigen::…

【Python】03快速上手爬虫案例三:搞定药师帮

文章目录 前言1、破解验证码2、获取数据 前言 流程&#xff1a;通过用户名、密码、搞定验证码&#xff0c;登录进药师帮网站&#xff0c;然后抓取想要的数据。 爬取数据&#xff0c;最终效果图&#xff1a; 1、破解验证码 使用药师帮测试系统&#xff1a;https://dianrc.ysb…

快速入门存内计算—助力人工智能加速深度学习模型的训练和推理

存内计算&#xff1a;提高计算性能和能效的新技术 传统的计算机架构是将数据存储在存储器中&#xff0c;然后将数据传输到计算单元进行处理。这种架构存在一个性能瓶颈&#xff0c;即数据传输延迟。存内计算通过将计算单元集成到存储器中&#xff0c;消除了数据传输延迟&#…

HiveSQL题——窗口函数(lag/lead)

目录 一、窗口函数的知识点 1.1 窗户函数的定义 1.2 窗户函数的语法 1.3 窗口函数分类 1.4 前后函数:lag/lead 二、实际案例 2.1 股票的波峰波谷 0 问题描述 1 数据准备 2 数据分析 3 小结 2.2 前后列转换&#xff08;面试题&#xff09; 0 问题描述 1 数据准备 …

kubernetes-快速部署一套k8s集群

1、前置知识点 1.1 生产环境可部署Kubernetes集群的两种方式 目前生产部署Kubernetes集群主要有两种方式&#xff1a; kubeadm Kubeadm是一个K8s部署工具&#xff0c;提供kubeadm init和kubeadm join&#xff0c;用于快速部署Kubernetes集群。 二进制包 从github下载发行…

04.对象树

一、引入 1.QT实现输出"hello world" 使用QT编写"hello world"程序&#xff0c;有两种实现方式&#xff1a; &#xff08;1&#xff09;直接在生成的ui文件中&#xff0c;拖入一个label控件&#xff0c;双击控件编辑内容即可实现 &#xff08;2&#xff0…

【C++历练之路】探秘C++三大利器之一——多态

W...Y的主页 &#x1f60a; 代码仓库分享&#x1f495; 前言&#x1f354;: 在计算机科学的广袤领域中&#xff0c;C多态性是一门令人着迷的技术艺术&#xff0c;它赋予我们的代码更强大的灵活性和可维护性。想象一下&#xff0c;你正在构建一个程序&#xff0c;需要适应不断…

【技术分享】远程透传网关-单网口快速实现威纶通触摸屏程序远程上下载

准备工作 一台可联网操作的电脑一台单网口的远程透传网关及博达远程透传配置工具网线一条&#xff0c;用于实现网络连接和连接触摸屏一台威纶通触摸屏及其编程软件一张4G卡或WIFI天线实现通讯(使用4G联网则插入4G SIM卡&#xff0c;WIFI联网则将WIFI天线插入USB口&#xff09;…

Redis 面试题 | 19.精选Redis高频面试题

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

Mac安装及配置MySql及图形化工具MySQLworkbench安装

Mac下载配置MySql mysql下载及安装 下载地址&#xff1a;https://dev.mysql.com/downloads/mysql/ 根据自己电脑确定下载x86还是ARM版本的 如果不确定&#xff0c;可以查看自己电脑版本&#xff0c;终端输入命令 uname -a 点击Download下载&#xff0c;可跳过登录注册&…

沙龙回顾|“强标”发布在即,汽车数据安全的挑战与应对

随着智能汽车产业驶入发展快车道&#xff0c;“数据安全”的重要性也日益突出。2020年以来发现的针对整车企业、车联网信息服务提供商等相关企业的恶意攻击达到280余万次。2023年初至今&#xff0c;就发生超过20起与车企相关数据泄露事件&#xff0c;汽车数据安全的现状不容乐观…

基于Matlab无刷直流电机系统仿真建模的新方法

摘 要&#xff1a;在分析无刷直流电机&#xff08;BLDC&#xff09;数学模型的基础上&#xff0c;提出了无刷直流电机系统仿真建模的 新方法。在Matlab/Simulink 中&#xff0c;建立独立的功能模块&#xff0c;如BLDC 本体模块、电流滞环控制模块、 速度控制模块等&#xff0c;…

防御保护--智能选路

目录 就近选路 策略选路--PBR DSCP优先级 智能选路--全局路由策略 1.基于链路带宽的负载分担 2.基于链路质量进行负载分担 3.基于链路权重进行负载分担 4.基于链路优先级的主备备份 ​编辑 DNS透明代理 就近选路 我们希望在访问不同运营商服务器时&#xff0c;通过对…

IDEA安装MyBatisX插件

IDEA工具在开发人员中经常使用&#xff0c;从dao层到xml文件对应的查看很费劲&#xff0c;这时候就有相应的插件工具出现了MyBatisX。他的好处如下&#xff1a; mapper and xml can jump back and forth mybatis.xml,mapper.xml prompt mapper and xml support auto prompt lik…

多场景建模:腾讯3MN

3MN: Three Meta Networks for Multi-Scenario and Multi-Task Learning in Online Advertising Recommender Systems 背景 推荐领域的多场景多任务学习&#xff1a;维护单模型即可节省资源也可节省人力&#xff1b;各个场景的数据共享&#xff0c;理论上面学习是更加充分的 …

RK3568 Android Launcher3定制修改

1.去掉Google搜索栏 目录packages/apps/Launcher3/src_build_config/com/android/launcher3/BuildConfig.java 修改如下&#xff1a; 2.Launcher首页去掉抽屉菜单&#xff0c;所有应用都放到桌面 第一步&#xff1a;禁止上滑显示抽屉 在目录packages/apps/Launcher3/quickste…

大模型学习与实践笔记(十四)

使用 OpenCompass 评测 InternLM2-Chat-7B 模型使用 LMDeploy 0.2.0 部署后在 C-Eval 数据集上的性能 步骤1&#xff1a;下载internLM2-Chat-7B 模型,并进行挂载 以下命令将internlm2-7b模型挂载到当前目录下&#xff1a; ln -s /share/model_repos/internlm2-7b/ ./ 步骤2&…