dns实验

工具

复制代码
dnf install bind -y #软件即可完成安装
[root@Client ~]# dnf install bind-utils -y #安装测试工具 没有的话用
[root@client ~]# getent hosts image.yao.org
[root@client ~]# cat /etc/resolv.conf  #查看域名是否配置成功
systemctl restart named

named-checkconf #主配置文件
[root@mysql-node4 /]# named-checkconf /etc/named.rfc1912.zones  #区域管理配置文件
named-checkzone yao.org /var/named/yao.org.zone  #正向解析文件
[root@mysql-node3 named]# named-checkzone 172.25.254.arpa /var/named/172.25.254.arpa
/etc/named.conf :#该反向解析

/etc/named.conf :该文件是主配置文件
- /etc/named.rfc1912.zones :这里区域管理配置文件
- /var/named : 该目录存放着详细的域名解析配置文件

正向解析

复制代码
[root@mysql-node3 named]#systemctl start named
[root@mysql-node3 named]# vim /etc/named.conf
options{
	listen-on port 53 { 172.25.254.30; };服务器
	...
	allow-query     { 172.25.254.0/24; };
}
[root@Server ~]# named-checkconf
[root@mysql-node3 named]# vim /etc/named.rfc1912.zones
...
zone "yao.org" IN {
        type master;
        file "yao.org.zone" # 文件的绝对路径 /var/named/yao.org.zone
};
...
[root@mysql-node3 /]# named-checkconf /etc/named.rfc1912.zones 

[root@mysql-node3 named]# cd /var/named
[root@mysql-node3  named]# cp -p named.localhost yao.org.zone # 通过复制模创建区域解析文件
[root@mysql-node3  named]# vim heroliu.org.zone
...
$TTL 1D # 域名存活时间是一天
@       IN SOA  dns.yao.org.  mail.admin.yao. (
                                        2025042001      ; serial
                                        1D              ; refresh
                                        1H              ; retry
                                        1W              ; expire
                                        3H )            ; minimum
                        NS      dns.yao.org.
dns                     A       172.25.254.30
image                   A       172.25.254.31
www                     A       172.25.254.32
...
systemctl start/restart named
[root@Client ~]# nmcli connection modify ens160 ipv4.dns 172.25.254.30
[root@Client ~]# nmcli connection reload
[root@Client ~]# nmcli connection up ens160
[root@client ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 172.25.254.30
[root@mysql-node3  named]#named-checkzone yao.org /var/named/yao.org.zone 
systemctl start/restart named

[root@Client ~]# nslookup image.heroliu.org
Server:		172.25.254.100
Address:	172.25.254.100#53

Name:	image.heroliu.org
Address: 172.25.254.101
[root@Client ~]# nslookup www.heroliu.org
[root@Client ~]# nslookup dns.heroliu.org

反向解析

如果说 正向解析:通过 域名 -> ip

那么 反向解析: 通过 ip -> 域名

复制代码
[root@mysql-node3 ~]#vim /etc/named.conf
..
options{
	listen-on port 53 { 172.25.254.30; };
	...
	allow-query     { 172.25.254.0/24; };
}
[root@Server ~]# named-checkconf
[root@mysql-node3named]# cd /var/named
[root@mysql-node3named]# cp -p named.loopback 172.25.254.arpa
[root@mysql-node3 named]# vim  172.25.254.arpa
$TTL 1D
@       IN SOA  dns.yao.org. rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
                        NS      dns.yao.org.
dns.yao.org.           A       172.25.254.30
31                     PTR     image.yao.org.
32                     PTR     www.yao.org.
30                     PTR     dns.yao.org.
[root@mysql-node3 named]# named-checkzone 254.25.172.in-addr.arpa 172.25.254.arpa
systemctl restart named
[root@Client ~]# getent hosts  172.25.254.31
101.254.25.31.in-addr.arpa	name = image.yao.org.
[root@Client ~]# getent hosts  172.25.254.32
[root@Client ~]# getent hosts  172.25.254.33
systemctl restart named

主从DNS服务

主服务器挂了以后,就可以从从服务器获取服务

复制代码
[root@mysql-node4 / named]# nmcli connection modify ens160 ipv4.dns 172.25.254.30
[root@mysql-node4 / named]# nmcli connection reload
[root@mysql-node4 / named]# nmcli connection up ens160

[root@Server ~]# vim /etc/named.rfc1912.zones
zone "heroliu.org" IN {
        type master;
        file "heroliu.org.zone";
        allow-transfer{172.25.254.40;};
};

zone "254.25.172.in-addr.arpa" IN {
        type master;
        file "172.25.254.arpa";
        allow-transfer{172.25.254.40;};
};
[root@mysql-node3 /]# named-checkconf /etc/named.rfc1912.zones 

# 正向数据解析配置文件中
[root@Server named]# vim heroliu.org.zone
...
                        NS      dns.yao.org.
                        NS      slave.yao.org.# 新增
dns                     A       172.25.254.30
slave                   A       172.25.254.40# 新增
...
# 反向数据解析配置文件中
[root@Server named]# vim 172.25.254.arpa

...
$TTL 1D
...
                        NS      dns.yao.org.
                        NS      slave.yao.org.
31                     PTR     image.yao.org.
32                     PTR     www.yao.org.
30                     PTR     dns.yao.org.
...

从服务器

复制代码
[root@Client ~]# dnf install bind -y
[root@Client ~]# nmcli connection modify ens160 ipv4.dns 172.25.254.40
[root@Client ~]# nmcli connection reload
[root@Client ~]# nmcli connection up ens160
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/8)

[root@Client ~]# vim /etc/named.conf
 11         listen-on port 53 { 172.25.254.40; };
 19         allow-query     { 172.25.254.0/24; };
 
 [root@Client ~]# vim /etc/named.rfc1912.zones
zone "yao.org" IN {
        type slave;
        file "slaves/yao.org.zone";
        masters {172.25.254.30;};
};
zone "254.25.172.in-addr.arpa" IN {
        type slave;
        file "slaves/172.25.254.arpa";
        masters {172.25.254.30;};
};

[root@mysql-node4 /]# systemctl restart  named

关掉主服务器。看一下从服务器能否使用
[root@client ~]# getent hosts www.yao.org
172.25.254.33   www.yao.org
#可以看一下当我主服务器关掉是,从服务器是否可以使用
[root@mysql-node4 /]# ls /var/named/slaves/
172.25.254.arpa  yao.org.zone
相关推荐
文人sec2 天前
grant 之后要跟着 flush privileges 吗?要不要使用分区表?
数据库·mysql·adb·数据分析
2501_916008894 天前
SSE 和 gRPC 流式接口如何抓包,调试 SSE 与 gRPC 流式接口
网络协议·计算机网络·网络安全·ios·adb·https·udp
2501_916008896 天前
全平台抓包工具,Windows、iPhone、Linux三个平台抓包测试
网络协议·计算机网络·网络安全·ios·adb·https·udp
鸽芷咕8 天前
MySQL Server 鸿蒙 PC 适配全记录:以混合工具链完成 C++23 交叉编译与 HNP 交付
adb·harmonyos·c++23
游戏开发爱好者811 天前
网络连接排查指南,谁在电脑后台偷跑流量,哪些程序在联网
网络协议·计算机网络·网络安全·ios·adb·https·udp
实心儿儿11 天前
MySQL 的安装
数据库·mysql·adb
2601_9623004711 天前
基于Python与Tkinter的ADB Monkey自动化测试脚本开发
python·adb·tkinter·android测试·gui自动化
flower_drop13 天前
基于 WebUSB 与 CDP:在浏览器端实现 Android 设备通信与无证书抓包实践
android·chrome·测试工具·adb·bug·edge浏览器
蜡台13 天前
# 已解决|MySQL 8\.4\.11 密码正确仍报错1045 \(28000\) Access denied 终极修复方案
android·mysql·adb
leoZ23113 天前
2026-09-08-mysql-57-init-walkthrough
前端·javascript·数据库·vue.js·opencv·mysql·adb