DNS域名解析服务
相较于由数字构成的IP地址,域名更容易被理解和记忆,所以我们通常更习惯通过域名的方式来访问网络中的资源。但是,网络中的计算机之间只能基于IP地址来相互识别对方的身份,而且要想在互联网中传输数据,也必须基于外网的IP地址来完成。
为了降低用户访问网络资源的门槛,DNS(Domain Name System,域名系统)技术应运而生。这是一项用于管理和解析域名与IP地址对应关系的技术,简单来说,就是能够接受用户输入的域名或IP地址,然后自动查找与之匹配(或者说具有映射关系)的IP地址或域名,即将域名解析为IP地址(正向解析),或将IP地址解析为域名(反向解析)。这样一来,我们只需要在浏览器中输入域名就能打开想要访问的网站了。DNS域名解析技术的正向解析也是我们最常使用的一种工作模式。
鉴于互联网中的域名和IP地址对应关系数据库太过庞大,DNS域名解析服务采用了类似目录树的层次结构来记录域名与IP地址之间的对应关系,从而形成了一个分布式的数据库系统。
以上是对DNS域名解析服务的一段简述,下面我将用一道实例描述如何搭建DNS服务
环境参数:
host | ip |
---|---|
server1 | 192.168.10.1/24 |
server2 | 192.168.10.2/24 |
desktop | 192.168.10.3/24 |
首先需要配置一个yum源,可以看看我的这篇文章centos-yum源的配置,这里我就不赘述了。
安装Bind服务程序
yum install -y bind*
简述bind服务程序
bind服务程序的配置并不简单,因为要想为用户提供健全的DNS查询服务,要在本地保存相关的域名数据库,而如果把所有域名和IP地址的对应关系都写入到某个配置文件中,估计要有上千万条的参数,这样既不利于程序的执行效率,也不方便日后的修改和维护。因此在bind服务程序中有下面这三个比较关键的文件。
主配置文件(/etc/named.conf):只有58行,而且在去除注释信息和空行之后,实际有效的参数仅有30行左右,这些参数用来定义bind服务程序的运行。
区域配置文件(/etc/named.rfc1912.zones):用来保存域名和IP地址对应关系的所在位置。类似于图书的目录,对应着每个域和相应IP地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。
数据配置文件目录(/var/named):该目录用来保存域名和IP地址真实对应关系的数据配置文件。
编辑主配置文件vim /etc/named.conf
修改前
修改第13行和第21行将{}中的内容改为any,将第14行注释
如下图所示
保存退出
然后编辑区域配置文件(/etc/named.rfc1912.zones)
vim /etc/named.rfc1912.zones
bind服务程序的区域配置文件(/etc/named.rfc1912.zones)用来保存域名和IP地址对应关系的所在位置。在这个文件中,定义了域名与IP地址解析规则保存的文件位置以及服务类型等内容,而没有包含具体的域名、IP地址对应关系等信息。服务类型有三种,分别为hint(根区域)、master(主区域)、slave(辅助区域),其中常用的master和slave指的就是主服务器和从服务器。将域名解析为IP地址的正向解析参数和将IP地址解析为域名的反向解析参数如下图所示
(Tips:源于https://www.linuxprobe.com/)
删除第一个,第三个,第五个,留下第二个和第四个
如下图所示
编辑为下图
保存退出
最后进入数据配置文件目录cd /var/named
cp -a named.localhost runtime.local
cp -a named.loopback runtime.zone
编辑正向区域文件vim runtime.local
保存退出
然后编辑反向区域文件vim runtime.zone
最后重启服务systemctl restart named
加入到开机自启systemctl enable named
在system1上进行测试
在system2上进行测试(ps:需要将system1,system2和desktop的dns设置为system1的ip地址)
在desktop上进行测试
prefect!!!
现在将system1上安装一个apache服务进行测试
yum install -y httpd
使用system2测试是否可以解析
使用desktop测试
后言
好了,RHEL7下DNS服务的搭建与配置到这里已经结束了,大家有什么想法的话可以在下方评论,由于水平有限,在很多地方肯定有些不足之处,如有纰漏或者错误,还请斧正,定当改进。文章写的很不容易,大家的评论和点赞就是我的最大动力,谢谢支持!