资源记录类型:
SOA记录(Start Of Authority record) ##起始授权记录
A 记录(Adress record) ##将域名解析到IPv4的IP地址
AAAA 记录(Adress record) ##将域名解析到IPv6的IP位址
CNAME(Canonical Name record) ##别名记录
MX 记录(Mail eXchange record) ##邮件交换器
NS 记录(Name Server record) ##专用于标明当前区域的DNS服务器
PTR 记录(PoinTer Record) ##将IP地址转换成主机的FQDN(全限定域名 )
1.正向解析(域名—>ip)
在服务端:
(1).注释掉全国通用DNS并查看到子配置文件
[root@localhost ~]# vim /etc/named.conf
###################
18 #forwarders {114.114.114.114;}
(2).编写区域文件(对要更改的内容在更改前进行复制)
[root@localhost ~]# vim /etc/named.rfc1912.zones
1
###################
20 zone “westos.com” IN { #定义解析库名
21 type master; #主dns解析
22 file “westos.com.zone”; #定义区域解析库文件名(默认在/var/named目录下面),file的前缀通常和zone的名字通常对应起来,然后加一个.zone的后缀。
23 allow-update { none; };
24 };
[root@localhost ~]# cd /var/named
[root@localhost named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
##named.localhos为模板文件 -p是指文件的权限
[root@localhost named]# cp -p named.localhost westos.com.zone
1
2
3
4
5
(3).编写区域解析库文件
[root@localhost named]# vim westos.com.zone
(4).重启服务
[root@localhost named]# systemctl restart named
1
在客户端: (测试)
##查看主机是否指定了 DNS服务器
[root@foundation34 ~]# cat /etc/resolv.conf
##查看访问域的信息
[root@foundation34 ~]# dig dns.westos.com
2.域名转换(轮询机制)
轮询机制: 将相同的域名解析到不同的IP,实现负载匀衡
在服务端:
(1).编写区域解析库文件
[root@localhost named]# vim westos.com.zone
1
[root@foundation34 ~]# dig node1.westos.com
1
[root@foundation34 ~]# dig www.westos.com
1
3.MX记录(邮件交换器)
MX记录用来定义用于域的邮件交换。这有助于电子邮件正确到达您的邮件服务器。 与许多其他记录类型不同的是,邮件记录通常不会将主机映射到某些内容,因为它们适用于整个区域。 MX设定区域中邮件服务器(SMTP)的主机。 每一个值前面由一个数字,是该主机邮件传递时的优先次序,此值越低表示有越高的邮件处理优先权,取值范围0-99。
在服务端:
(1).编写区域解析库文件
[root@localhost named]# vim westos.com.zone
1
(2).重启服务
[root@localhost named]# systemctl restart named
在客户端: (测试)
[root@foundation34 ~]# dig -t mx westos.com
1
##发送邮件
[root@localhost named]# mail lee@westos.com
##查询邮件的状态
[root@localhost named]# mailq
4.DNS 反向解析
DNS反向解析:将IP地址转化为域名
在服务端:
(1).编写区域文件
[root@localhost ~]# vim /etc/named.rfc1912.zones
1
###################
53 zone “254.25.172.in-addr.arpa” IN { ##定义解析库名(IP反写)
54 type master;
55 file “172.25.254.ptr”; ##定义区域解析库文件名(反向解析一般在文件名后加一个.ptr的后缀)
56 allow-update { none; };
57 };
[root@localhost named]# ls
[root@localhost named]# cp -p named.loopback 172.25.254.ptr
1
2
3
( 2).编写区域解析库文件
[root@localhost named]# vim westos.com.ptr
1
3.重启服务
[root@localhost named]# systemctl restart named
1
在客户端: (测试)
##-x 用于查找IP地址的反向DNS域名
[root@foundation34 ~]# dig -x 172.25.254.111
5.DNS双向解析(多向解析)
DNS双向解析: 通过内网和外网访问同一个域名时,获取到不同的ip地址 目标:实现内网主机和外网主机访问同一网站域名,定义到不同服务器 实现方式:让不同的客户看不同的文件即可
在服务端:
(1).在一块网卡上设定两个ip
[root@localhost ~]# ifconfig
1
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
1
[root@localhost ~]# systemctl restart network
[root@localhost ~]# ip addr show eth0
1
2
(2).编写主配置文件
[root@localhost ~]# vim /etc/named.conf
1
59 view internet { ##内网
60 match-clients {
192.168.0.0/24; }; ##匹配客户端
61 zone “.” IN {
62 type hint; #根域名解析
63 file “named.ca”;
64 };
65 include
“/etc/named.rfc1912.inter”; #包含的文件
66 };
67
68 view outernet { ##外网
69 match-clients { any;
}; ##匹配客户端
70 zone “.” IN {
71
type hint; #根域名解析
72 file
“named.ca”;
73 };
74 include “/etc/named.rfc1912.zones”;
#包含的文件
75 };
-p表示权限;必须加-p
[root@localhost ~]# cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.inter
1
(3).编写区域文件
[root@localhost named]# vim /etc/named.rfc1912.inter
###############
直接更改:
34 zone “westos.com” IN {
35 type master;
36 file
“westos.com.inter”; #定义内网的区域解析库文件名
37 allow-update { none; };
38 };
(4).编写区域解析库文件
[root@localhost named]# cp -p westos.com.zone westos.com.inter
[root@localhost named]# vim westos.com.inter
1
2
#######################
执行 :%s/172.25.254/192.168.0/g #全文替换
客户端1 (与DNS服务器的外网处于相同网段)
[root@foundation34 ~]# dig node1.westos.com
客户端2 (与DNS服务器的内网处于相同网段)
##配置ip
[root@localhost Desktop]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
[root@localhost Desktop]# ifconfig eth0
##指定DNS服务器
[root@localhost Desktop]# vim /etc/resolv.conf
#########################
nameserver 192.168.0.134
实验总结:
两台客户主机询问同一个dns服务器,得到不同的结果
这是因为将两台主机ip分别定义为内网和外网,解析得到不同的ip
————————————————
版权声明:本文为CSDN博主「bling8」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/songyuchaoshi/java/article/details/90234699