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
相关推荐
大连好光景3 小时前
ADB复杂命令拆解
测试工具·adb·android-studio
小菜同学爱学习1 天前
兜底保障!MySQL运维实战与常见问题排查全解析
运维·mysql·adb
嵌入式×边缘AI:打怪升级日志1 天前
100ASK_T113-Pro开发板上手体验:硬件介绍、系统烧录、串口与 ADB 调试
adb
运维全栈笔记1 天前
K8S部署MySQL主从复制实现高可用数据库
mysql·adb·云原生·容器·系统架构·kubernetes·kubelet
efir OONA3 天前
MySQL数据库误删恢复_mysql 数据 误删
数据库·mysql·adb
我要升天!3 天前
C语言连接 MySQL:libmysqlclient 获取方式详解
c语言·开发语言·数据库·mysql·adb
小智社群4 天前
小米安卓真机ADB对硬件操作
android·adb
norq juox4 天前
MySQL 导出数据
数据库·mysql·adb
Tangsong4044 天前
以Termius的方式进行安卓设备调试?试试【easyadb】| 多功能可视化adb工具
android·adb