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
相关推荐
啊森要自信5 小时前
【GUI自动化测试】控件、鼠标键盘操作与多场景自动化
c语言·开发语言·python·adb·ipython
Arvin.Angela14 小时前
MySQL安装及运行环境配置
数据库·mysql·adb
她叫我大水龙1 天前
ADB 入门指南:安装与常用命令速查手册
adb
wb043072011 天前
仓库搬家不停业——从阿明的“在线换仓库“,看数据库迁移与 Schema 演进的实战方法论
数据库·adb·架构
Mr -老鬼2 天前
EasyClick 入门指南:Shell 命令与 ADB 完全指南
android·adb·自动化·shell·easyclick·易点云测
feifeigo1232 天前
C# ADB 安卓设备数据传输工具
android·adb·c#
2301_773643622 天前
mysql5.7稳定版使用
adb
ULIi096kr2 天前
MySQL解决Too many connections报错:连接数爆满排查、优化与永久解决方案
数据库·mysql·adb
ha_lydms2 天前
AnalyticDB基本概念
mysql·adb·analyticdb
会Tk矩阵群控的小木3 天前
小红书矩阵软件:基于Python+ADB的多设备批量管理自动化脚本实战
运维·python·adb·矩阵·自动化·新媒体运营·个人开发