Linux-bind服务程序提供域名解析服务之配置主服务器【正向解析、反向解析】

在生活中,存在经纬图和世界地图,而对于网络中的计算机而言,存在的是IP地址和域名。这两者之间存在着某些共同点。

  • IP地址和经度纬度都是数字,域名和地图中某个地方的名字都是字符串,字符串相对于数字而言较好记忆。
  • IP地址和经度纬度能精准定位,但是域名和某个地方的名字不是人人都知道。

对计算机而言,只能通过ip地址去识别其他主机,而不能通过域名去识别。

DNS服务

DNS(Domain Name System, 域名系统)能够接收用户输入的域名或者IP地址,输出相应的IP地址或者域名。
正向解析:由域名得知IP地址
反向解析:由IP地址得知域名

域名系统层次结构【一层一域】

在这里插入图片描述

3种类型的DNS服务器
①主服务器:一个区域内域名和IP地址对应关系的全集【真正服务器】
②从服务器:一个区域内域名和IP地址对应关系的子集(可以有多个)【子集服务器】
③缓存服务器:【常部署在企业内网网关位置,用于加快用户的域名查询请求】
通过向其他域名解析服务器查询获取域名和IP地址的关系
将经常查询的域名信息保存到服务器本地,提高查询效率

用户发起域名查询的方式
递归查询:指DNS服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果。如果DNS服务器本地没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结果提交给用户。【这事交给你了
迭代查询:指DNS服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另一台DNS服务器的地址,用户再向这台DNS服务器提交请求,这样依次反复,直到返回查询结果。【你找别人吧

配置bind服务程序

  1. BIND(Berkeley Internet Name Domain,伯克利因特网名称域)服务是全球范围内使用最广泛、最安全可靠且高效的域名解析服务程序。
  2. 建议大家在生产环境中安装部署bind服务程序时加上chroot(俗称牢笼机制)扩展包以便有效地限制bind服务程序仅能对自身的配置文件进行操作,以确保整个服务器的安全
    yum install bind-chroot
    在这里插入图片描述
  3. bind服务程序的3大配置文件【在Linux系统中,bind服务程序的服务名为named

主配置文件(/etc/named.conf)【定义bind服务程序的运行】
在这里插入图片描述

#主配置文件:
#11行:表示服务器上的所有IP地址均可提供DNS域名解析服务【供应商】
listen-on port 53 { any; };
#17行:允许所有人对本服务器发送DNS查询请求【需求商】
allow-query { any; };

区域配置文件(/etc/named.rfc1912.zones)【用来记录域名和IP地址对应关系的存放位置的文件】
在这个文件中,定义了域名与IP地址解析规则保存的文件位置以及服务类型等内容,而没有包含具体的域名、IP地址对应关系等信息。
服务类型有三种,分别为hint(根区域)master(主区域、主服务器)slave(辅助区域、从服务器)
在这里插入图片描述

#【正向解析】
zone "abong.com" IN{
type master;
file "abong.com.zone";
allow-update {none;};
};
#【反向解析】
zone "10.168.192.in-addr.arpa" IN{
type master;
file "192.168.10.arpa";
};

数据配置文件目录(/var/named)【用来保存域名和IP地址真实对应关系的数据配置文件】
两个模板文件的所属组都为named
在这里插入图片描述

  1. 执行named-checkconf命令和named-checkzone命令,分别检查主配置文件与数据配置文件中语法或参数的错误。

正向解析

需求:
www.abong.com解析为192.168.10.10
bbs.abong.com 解析为192.168.10.20

首先配置网络,ping 192.168.10.10ping 192.168.10.20都没问题
①编辑区域配置文件
在这里插入图片描述
②编辑数据配置文件【正向解析的模板文件(/var/named/named.localhost)】
复制一份正向解析模板文件,命名为abong.com.zone,该文件名由区域配置文件中定义。【cp命令必须要使用-a参数,以确保保留文件的所有者、所属组、权限属性等信息】
在这里插入图片描述
编辑文件abong.com.zone:
修改如下:

#abong.com.           域名后面一定要以.结束,不然肯定报错!!!
#root.abong.com.        管理员邮箱,root.域名.
#NS ns.abong.com.       NS即声明用于域名解析的DNS服务器的域名
#ns IN A 192.168.10.10    DNS服务器的正向解析,将ns.abong.com解析为192.168.10.10
#www IN A	192.168.10.10  【格式:缩写 IN A IP地址】【作用:将一个域名解析为某一个IP地址】【正向解析】
$TTL 1D    #有效期
@	IN SOA	abong.com. root.abong.com.  (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	ns.abong.com.
ns 	IN A	192.168.10.10
www	IN A	192.168.10.10
bbS	IN A 	192.168.10.20

③重启named服务,并添加到开启自启项中
systemctl restart named
systemctl enable named
④修改要进行域名正向解析的主机的DNS地址为刚配置的DNS服务器地址【192.168.10.10
在这里插入图片描述
⑤重启网络服务
systemctl restart network
⑥使用pingnslookup进行域名正向解析测试
在这里插入图片描述
在这里插入图片描述

故障排查:

1、故障情况:无法进行正向解析,查看named服务的状态,有如下报错。
在这里插入图片描述
2、故障分析
①看IP地址能不能ping通,看DNS地址是否已经设置为DNS服务器的IP地址
②看防火墙是否拦截,可清空防火墙试试
③看网络服务是否忘记重启,可以重启网络服务试试
④看数据配置文件的所有者、所属组、权限属性是否和模板文件的一致
3、修复故障
我这里是因为数据配置文件的所属组和模板文件不一致,分析及修复如下:
在这里插入图片描述
数据配置文件的所属组必须是named,这样可以保证bind服务程序可以顺利的读取文件的内容。最后重启named服务即可。
在复制文件时,可以使用-a参数,保留原始文件的所有者、所属组、权限属性等信息
cp -a /var/named/named.localhost /var/named/abong.com.zone

反向解析

需求:
192.168.10.10解析为www.abong.com
192.168.10.20解析为bbs.abong.com
首先配置网络,ping 192.168.10.10ping 192.168.10.20都没问题
①编辑区域配置文件

zone "10.168.192.in-addr.arpa" IN{
        type master;
        file "192.168.10.arpa";
};

②编辑数据配置文件【反向解析的模板文件(/var/named/named.loopback)】
复制一份反向解析模板文件,命名为192.168.10.arpa,该文件名由区域配置文件中定义。【cp命令必须要使用-a参数,以确保保留文件的所有者、所属组、权限属性等信息】
在这里插入图片描述

$TTL 1D
@	IN SOA	abong.com. root.abong.com. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	ns.abong.com.
ns	A	192.168.10.10
10 	PTR	www.abong.com.
20	PTR	bbs.abong.com.	

③重启named服务
systemctl restart named
systemctl enable named
④使用nslookup进行反向解析测试
在这里插入图片描述
如果遇到配置报错,请重新检查以上配置是否都正确,请相信按照以上步骤是可以配置成功的。

以上就是DNS服务器域名解析服务的基本介绍,以及如何在DNS主服务器上部署正向解析和反向解析

发布了57 篇原创文章 · 获赞 58 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_36522099/article/details/104976395
今日推荐