DNS基础:域名解析、多重域名解析、特殊域名解析、主从同步设置
作者:卖兔子的萝北
分类:学习笔记
虚拟机A ip:192.168.4.7
虚拟机B ip:192.168.4.207
一、域名解析
1.装包,关防火墙,关SELinux
关闭SELinux、防火墙
firewall-cmd --set-default-zone=trusted
#setenforce 0
#yum -y install bind bind-chroot //装包
2.修改主配置文件
虚拟机A (建议更改配置前先做备份)
#vim /etc/named.conf
options {
directory "/var/named"; #定义地址库文件存放路径
};
zone "tedu.cn" IN { #定义负责解析tedu.cn域名
type master; #权威DNS服务器 master主服务
file "tedu.cn.zone"; #地址库文件名称
};
3.建立地址库文件
保证named用户对地址库文件的读权限(装包时自动创建的用户)
所有的域名必须以点结尾
如果没有以点结尾,那么默认补全本地地址库文件负责的域名
cp -p /var/named/named.localhost /var/named/tedu.cn.zone
(cp -p保持原有权限)
vim /var/named/tedu.cn.zone #修改域名文件
tedu.cn. NS svr7 #定义域名 主机名(可随意修改)
svr7 A 192.168.4.7 #主机名(上下对应) 本机ip地址
www A 1.1.1.1 #站点名 对应ip(可随意修改)
vip A 2.2.2.2 #站点名 对应ip(可随意修改)
#systemctl restart named
虚拟机B (关闭SELinux,防火墙)
echo nameserver 192.168.4.7 >> /etc/resolv.conf #添加域名解析的ip
nslookup vip.tedu.cn #测试DNS域名 vip
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: vip.tedu.cn
Address: 2.2.2.2
nslookup www.tedu.cn #测试DNS域名 www
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.tedu.cn
Address: 1.1.1.1
二、多域名解析
虚拟机A
1.在之前的主配置文件中添加
vim /etc/named.conf
zone "lol.com" IN { #定义的域名
type master; #主服务
file "lol.com.zone"; #地址库文件路径
};
- 建立lol.cn的地址库文件
cp -p /var/named/named.localhost /var/named/lol.com.zone
#建立新的地址库文件,cp -p保留保留源文件的权限
vim /var/named/lol.com.zone
lol.com. NS svr7
svr7 A 192.168.4.7
vip A 192.168.4.8
ftp A 192.168.4.9
systemctl restart named
虚拟机B测试
nslookup vip.lol.com #虚拟机B测试域名解析
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: vip.lol.com
Address: 192.168.4.8
三、特殊解析(地址库文件中记录的特殊写法)
1、从服务器可以提供域名解析。
2、从服务器备份主DNS数据。
DNS服务器常见的资源解析记录类型都有哪些?
NS声明域名服务器
A 正向解析记录
CNAME 别名解析记录
……
1.DNS轮询
虚拟机A
vim /var/named/tedu.cn.zone
tedu.cn. NS svr7 //声明DNS服务器为svr7
svr7 A 192.168.4.7 //svr7解析结果为192.168.4.7
www A 1.1.1.1
www A 3.3.3.3
www A 4.4.4.4
vip A 2.2.2.2
#systemctl restart named
虚拟机B测试
nslookup www.tedu.com
2、泛域名解析
泛域名解析记录的优先级是最低的。如果有专门的匹配记录,那就按匹配记录进行解析。入有没有专门匹配到的站点名,就按泛域名进行解析
虚拟机A
cat /var/named/tedu.cn.zone
tedu.cn. NS svr7
svr7 A 192.168.4.7
www A 1.1.1.1
www A 3.3.3.3
vip A 2.2.2.2
* A 5.5.5.5
systemctl restart named
虚拟机B测试
#nslookup vip.tedu.cn ——》2.2.2.2
nslookup wwww.tedu.cn ——》5.5.5.5
nslookup haha.tedu.cn ——》5.5.5.5 #haha的就是用泛域名进行解析的
3.解析记录的别名
虚拟机A
#vim /var/named/tedu.cn.zone
tedu.cn. NS svr7
svr7 A 192.168.4.7
www A 1.1.1.1
vip A 2.2.2.2
* A 5.5.5.5
mail CNAME vip #mail的解析结果与vip的解析结果一致
systemctl restart named
虚拟机B测试
#nslookup vip.tedu.cn ——》2.2.2.2
nslookup mail.tedu.cn
Server: 192.168.4.7
Address: 192.168.4.7#53 #53是端口
mail.tedu.cn canonical name = vip.tedu.cn.
Name: vip.tedu.cn
Address: 2.2.2.2
四、构建DNS主从架构
虚拟机A 主DNS服务器 tedu.cn
虚拟机B 从DNS服务器 tedu.cn
虚拟机A
1.修改主配置文件,指定从服务器的IP地址
vim /etc/named.conf
options {
directory "/var/named"; #定义地址库文件路径
allow-transfer { 192.168.4.207; }; #允许这个地址进行数据传输
};
named-checkconf /etc/named.conf 检查配置文件是否有误。(如果没有任何内容返回,表示正确。)
2.声明DNS服务器
#vim /var/named/tedu.cn.zone #添加地址库文件数据
tedu.cn. NS svr7
tedu.cn. NS pc207 //声明从DNS服务器是谁
svr7 A 192.168.4.7
pc207 A 192.168.4.207 #声明从DNS服务器ip地址
named-checkzone tedu.cn /var/named/tedu.cn.zone
#返回值zone tedu.cn/IN: loaded serial 0 OK
systemctl restart named
虚拟机B
1.基础环境
firewalld-cmd --set-default-zone=trusted
setenforce 0
yum -y install bind bind-chroot
2.修改主配置文件
vim /etc/named.conf
options {
directory "/var/named"; #地址库文件路径
};
zone "tedu.cn" IN { #与虚拟机A主配置域名一致
type slave; //类型为从服务器
file "/var/named/slaves/tedu.cn.slave"; //确保named用户有权限写 入,文件存放路径(自动接收A的地址库文件信息保存到/tedu.cn.slave文件中)
masters { 192.168.4.7; }; //指定主DNS服务器,注意空格
masterfile-format text; //地址库文件以明文存储(写入文件的信息我们可以读取)
};
#named-checkconf /etc/named.conf #检查文件格式
#echo nameserver 192.168.4.207 >> /etc/resolv.conf #
#systemctl restart named
主从同步设置
虚拟机A
#vim /var/named/tedu.cn.zone #库地址文件中
@ IN SOA @ rname.invalid. (
19991026 ; serial
# 数据版本号。不能超过10位数。每次版本号更新从服务器都
会立即重新获取文件信息,默认1天一修改