DNS的正向、反向解析的服务配置知识点及实验

概述:DNS称域名解析协议:本质就是一个翻译机,url(俗称网址,用于定位和访问互联网上的资源)翻译成机器路由可以查找的IP地址。连接方式通常是互联网,Internet进行连接。

一、域名

域名分为以下五种:

1、顶级域名划分:

  • 根据性质划分:com企业 org 组织 gov政府 edu教育

  • 根据国家划分:cn中国 jp日本 uk 英国 us美国

  • 通用域名划分:net,xyz,top,online,com.cn

2、根域名服务器 : 根域名服务器负责告诉用户哪些服务器 管理 .com .xyz .net ....

3、顶级域名服务器: 管理相应的顶级域名下知道xxx.com是哪他台服务器管理

4、权威域名服务器: 管理完整域名的解析。

**5、本地域名服务器:**114.114.114.114 8.8.8.8 235.3.3.4

二、DNS解析过程

三、搭建DNS域名解析服务器

1、安装

命令:yum/dnf install bind -y

2、配置文件

复制代码
# dns服务器全局设置
options {
        listen-on port 53 { 127.0.0.1; }; #重要: ipv4监听地址
        listen-on-v6 port 53 { ::1; }; # ipv6 监听地址
        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     { 172.25.254.200; };# 重要:决定那些地址可以来获取dns解析服务
        
        recursion yes; # 重要 yes:递归查询 no:迭代查询

        dnssec-validation yes; # 是否开启加密传输,使用默认即可

        managed-keys-directory "/var/named/dynamic"; # dns密钥保存位置
        geoip-directory "/usr/share/GeoIP";

        pid-file "/run/named/named.pid"; # pid保存在该文件中
        session-keyfile "/run/named/session.key"; # 通信密钥
        }
        
       logging {
        channel default_debug {
                file "data/named.run"; #日志保存的文件
                severity dynamic; # 日志级别
        };
        
        
};

3、配置区域信息文件

进入/etc/named.rfc1912.zones(声明文件)配置想要配置的文件

4、进入etc/named(数据文件)

bash 复制代码
[root@server named]# ls
data  dynamic  named.ca  named.empty  
named.localhost # 正向解析的模版配置文件
named.loopback  # 反向解析的模版配置文件
slaves
  • named.localhost(正向解析)模版说明
bash 复制代码
$TTL 1D # 生存时间
@       IN SOA  @ rname.invalid. (
                                        0       ; serial # 序列号
                                        1D      ; refresh # 刷新时间1天
                                        1H      ; retry # 重新连接间隔 1小时
                                        1W      ; expire # 过期 1 周
                                        3H )    ; minimum # 缓存3小时
#    权威域名解析服务器
        NS      ns.xxxx.com
mail.xxx.com        A       127.0.0.1
image.xxx.com    		AAAA    ::1
        
# @ 当前的区域名称 xxx.com
# IN internet
# SOA 开始的授权记录
# rname.invalid. :管理员的邮箱
  • named.loopback(反向解析)模板说明

    bash 复制代码
    #反向区域文件
    [root@localhost ~]# vim /var/named/named.172.24.8
    $TTL 1D
    @ IN SOA ns.baidu.com. admin.baidu.com. ( 0 1D 1H 1W 3H )
    	IN NS ns.baidu.com.
    128 IN PTR ns.baidu.com.
    128 IN PTR www.baidu.com.
    128 IN PTR mail.baidu.com.
    128 IN PTR ftp.baidu.com.
    #反解需要注意:主机名尽量使用完整的FQDN,即要写上"."

四、正向解析的实验配置

在server 服务器上去配置

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

命令:

bash 复制代码
vim /etc/named.conf

进入后仅用配置第11行与19行即可。如同所示:

2、配置/etc/named.rfc1912.zones(声明文件)

命令:

bash 复制代码
vim  /etc/named.rfc1912.zones

进入后配置自己想要配置的文件即可。如下所示:

bash 复制代码
zone"openlab.com"IN{
    type master
    file"openlab.com.zone";
    allow-update{none;};
};

3、配置/var/named(数据文件)

bash 复制代码
cd  /var/named

复制named.localhost中归属组、权限、内容一并给自己要配置的文件

bash 复制代码
cp  -a  named.localhost  openlab.come.zones

而后进入要配置的文件中去修改

bash 复制代码
vim  openlab.com.zone

配置地址可随意,具体如图:

配置完成后记得重启系统

bash 复制代码
systemctl restart named.service

在client客户端去验证

4、

五、反向解析的实验配置

在server服务器上进行配置

1、基于正向解析的配置所以不用配置/etc/named.conf的主配置文件。直接

去/etc/named.rfc1912.zones文件中进行配置。

bash 复制代码
vim /etc/named.rfc1912.zones
bash 复制代码
zone "108.168.192.in-addr.arpa" IN { #双引号内的反向解析的区域名
        type master;
        file "192.168.108.arpa";#反向解析的文件/var/named/172.25.254.arpa
        allow-update { none; };
};

进行以上修改就可以

2、进入/var/named文件中进行数据配置文件如下:

bash 复制代码
vim 192.168.108.arpa

而后重启

在client中进行测试

3、查看是否正确

六、主从服务器的配置

1、基于dns的正向、反向解析的配置

命令:

bash 复制代码
# 1.配置主服务器 修改声明文件,将正向和反向声明做转发处理,转发给从服务器
vim /etc/named.rfc1912.zonese
######
zone "openlab.com" IN {
        type master;
        file "openlab.com.zone";
        allow-transfer{192.168.108.101;}; # 允许转发给从服务器
};
.....
zone "108.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.108.arpa";
        allow-transfer { 172.25.254.101; };
};
######

# 2.配置从服务器
# 2.1关闭防火墙
systemctl disable --now firewalld
setenforce 0

# 2.2修改/etc/named.conf
vim /etc/named.conf
#########
listen-on port 53 { any; };
allow-query     { any; };
#########

# 2.3修改/etc/named.rfc1912.zones
vim /etc/named.rfc19212.zones
#########
zone "openlab.com" IN {
        type slave;  # 身份为从服务器
        masters {192.168.108.100;}; # 从服务器的主为 192.168.108.100
        file "slaves/openlab.com.zone"; # 从服务器的区域数据文件保存位置
};

zone "108.168.192.in-addr.arpa" IN {
        type slave;
        masters {192.168.108.100;};
        file "slaves/172.25.254.arpa";
};
########

# 3.两边都重启服务
systemctl restart named

# 4.将主从ip写到客户端的dns中,然后使用nslookup 进行正反向解析测试
nmcli connection modify ens160 +ipv4.dns 192.168.108.101
nmcli connection up ens160

# 主从都在线时 使用主进行解析
[root@client ~]# nslookup bbs.openlab.com
Server:		192.168.108.100
Address:	192.168.108.100#53

Name:	bbs.openlab.com
Address: 192.168.108.101

# 当将主强制下线后 从进行解析
[root@client ~]# nslookup bbs.openlab.com
Server:		192.168.108.101
Address:	192.168.108.101#53

Name:	bbs.openlab.com
Address: 192.168.108.101

[root@client ~]# nslookup 192.168.108.101
101.108.168.192.in-addr.arpa	name = www.openlab.com.

2、client中进行测试即可

想要然从服务器启动,那就让主服务器关机

相关推荐
寻星探路3 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
七夜zippoe6 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥7 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
会员源码网7 小时前
理财源码开发:单语言深耕还是多语言融合?看完这篇不踩坑
网络·个人开发
米羊1218 小时前
已有安全措施确认(上)
大数据·网络
Fcy6488 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满8 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠8 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
主机哥哥8 小时前
阿里云OpenClaw部署全攻略,五种方案助你快速部署!
服务器·阿里云·负载均衡
Harvey9038 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s