Linux之DNS域名解析服务
一、安装Bind服务程序
BIND(Berkeley Internet Name Domain,伯克利因特网名称域)服务是全球范围内使用最广泛、最安全可靠且高效的域名解析服务程序。DNS域名解析服务作为互联网基础设施服务,其责任之重可想而知,因此建议大家在生产环境中安装部署bind服务程序时加上chroot(俗称牢笼机制)扩展包,以便有效地限制bind服务程序仅能对自身的配置文件进行操作,以确保整个服务器的安全。
第一步:
yum install -y bind-chroot #安装bind服务程序
主配置文件(/etc/named.conf):只有58行,而且在去除注释信息和空行之后,实际有效的参数仅有30行左右,这些参数用来定义bind服务程序的运行。
区域配置文件(/etc/named.rfc1912.zones):用来保存域名和IP地址对应关系的所在位置。类似于图书的目录,对应着每个域和相应IP地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。
数据配置文件目录(/var/named):该目录用来保存域名和IP地址真实对应关系的数据配置文件。
在Linux系统中,bind服务程序的名称为named。首先需要在/etc目录中找到该服务程序的主配置文件,然后把第11行和第17行的地址均修改为any,分别表示服务器上的所有IP地址均可提供DNS域名解析服务,以及允许所有人对本服务器发送DNS查询请求
第二步:vim /etc/named.conf
二、正向解析
在DNS域名解析服务中,正向解析是指根据域名(主机名)查找到对应的IP地址
第一步:编辑区域配置文件
vim /etc/named.rfc1912.zones
//正向解析
添加如下配置:
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update {none;};
};
第二步:拷贝正向解析的模板文件
cd /var/named/ #进入/var/named目录
cp -a named.localhost linuxprobe.com.zone #复制文件
第三步:编辑数据配置文件
vim linuxprobe.com.zone
修改配置如下:
$TTL 1D #生存周期为1天
@ IN SOA linuxprobe.com. root.linuxprobe.com. (
#授权信息开始: #DNS区域的地址 #域名管理员的邮箱(不要用@符号)
0 ; serial #更新序列号
1D ; refresh #更新时间
1H ; retry #重试延时
1W ; expire #失效时间
3H ) ; minimum #无效解析记录的缓存时间
NS ns.linuxprobe.com. #域名服务器记录
ns IN A 192.168.1.100 #地址记录(ns.linuxprobe.com.)
www IN A 192.168.1.110 #地址记录(www.linuxprobe.com.)
bbs IN A 192.168.1.120 #地址记录(bbs.linuxprobe.com.)
第四步:把Linux系统网卡中的DNS地址参数修改成本机IP地址
systemctl restart network #重启网络服务
第五步:
iptables -F #关闭防火墙
第六步:
systemctl restart named #重启named服务
第七步:DNS服务正向解析测试:nslookup
[root@2019040744 named]# nslookup
> www.linuxprobe.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: www.linuxprobe.com
Address: 192.168.1.110
> bbs.linuxprobe.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: bbs.linuxprobe.com
Address: 192.168.1.120
第三步:反向解析
在DNS域名解析服务中,反向解析的作用是将用户提交的IP地址解析为对应的域名信息
第一步:编辑区域配置文件。
vim /etc/named.rfc1912.zones
添加如下配置:
//反向解析
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.arpa";
};
第二步:拷贝反向解析的模板文件
cd /var/named/
cp -a named.loopback 192.168.1.arpa
第三步: vim 192.168.1.arpa
$TTL 1D
@ IN SOA linuxprobe.com. root.linuxprobe.com. (
0 ; serial #更新序列号
1D ; refresh #更新时间
1H ; retry #重试延时
1W ; expire #失效时间
3H) ; minimum #无效解析记录的缓存时间
NS ns.linuxprobe.com.
ns A 192.168.1.100
100 PTR ns.linuxprobe.com. #PTR为指针记录,仅用于反向解析中。
110 PTR www.linuxprobe.com.
120 PTR bbs.linuxprobe.com.
第四步:把Linux系统网卡中的DNS地址参数修改成本机IP地址
systemctl restart network #重启网络服务
第五步:
iptables -F #关闭防火墙
第六步:
systemctl restart named #重启named服务
第七步:DNS服务反向解析测试:nslookup
[root@2019040744 named]# nslookup
> 192.168.1.100
100.1.168.192.in-addr.arpa name = ns.linuxprobe.com.
> 192.168.1.110
110.1.168.192.in-addr.arpa name = www.linuxprobe.com.
> 192.168.1.120
120.1.168.192.in-addr.arpa name = bbs.linuxprobe.com.