DNS服务
DNS是域名解析服务,就是将网址名字解析成IP地址 ,方便了人们上网浏览、访问。由于访问量巨大,只一台服务器难以解决问题,所以要搭建若干服务器来对外提供服务,其中一台为主服务器,其他为从属服务器。下面将介绍DNS主服务器、从属服务器以及子域的DNS服务器的搭建。
linux系统域名解析有三种方式:
1..hosts文件解析:完全分散管理,只影响本机,当然windows上也有hosts文件
2.NIS服务器 :完全集中管理,有自己的数据库,记录IP与名字的对应关系,影响所有机器,考虑到访问量,适合小型环境
3.DNS:既集中又分散,linux系统的主机名叫FQDN(全称域名),结构是以点相隔,前为别名,后面为域名,例如:
www.qq.com. (最后有点结束,默认不写)
其中www为别名,mage.com为域名。
一、DNS域名结构
从根域开始向下,依次是一级域、二级域、三级域......最多有127级,例如:“点”表示根域,而com则为一级域,又称为顶级域,com以下的qq就是二级域。每个域都有自己的DNS服务器,每个上级域的DNS服务器都记录了下级域的DNS服务器地址。
二、搭建DNS服务器
准备工作:关闭防火墙,禁用selinux
1.互联网上大部分由bind软件提供DNS服务 ,安装bind软件包,其中的程序名叫named:yum install bind
2.启动服务:systemctl start named
3.查看DNS服务启动的端口为TCP与UDP的53,但监听的端口绑定的地址为127.0.0.1,意味者DNS还不能对外提供服务,需要更改配置文件
4.DNS的主配置文件为 /etc/named.conf, 更改监听的端口及区域数据库的配置文件
5.检查数据库文件的语法:named-checkzone 文件名
6.测试
具体过程如下图:
1.
更改监听的端口:
或者:包括本机上的所有地址
或者注释掉,或者删除,表示包括本机所有地址
更改数据库,建议在 rfc1912.zones等子配置文件中修改定义,文件内容:
建立区域数据库文件,以一个文件为模版(named.localhost),必须放在/var/named目录下:
由上可知:1.TTL是缓存到DNS服务器或客户端的记录的有效期,提前定义,可以全局使用,也可以自己定义
2.整个DNS区域数据库结构由SOA、NS、 A记录组成
3.SOA记录必须放在第一条,开始是域名,也可以写为mage.com.,注意要以点结尾,否则自动补全域名(mage.com.mage.com),在SOA记录中只记录主服务器数据库的名字(master),然后是邮箱地址,因为@有定义,所以用点来代替。
4.区域数据库版本号:要根据版本号来判断数据库是否更新,版本号最长十位
5.刷新时间:除了主服务器,还有若干从属服务器,一起提供本域的解析,主服务器的数据库权限为rw,可以更改,二从属数据库只能读。当主数据库更新后,从属数据库要与其同步,时间间隔为refresh,默认时间单位为秒,即一天同步一次
6.同步的方式有两种:push:主去同步从属
pull:从属去同步主
7.尝试时间:同步过程中,网络出故障,无法同步时,会每隔一个尝试时间去继续同步
8.过期时间:超过一周仍然无法同步,从属服务器数据库就过期,不再提供服务
9.否定结果的缓存时间:用户输入错误的结果也会被缓存,以便下次输入错误不必再去解析:wwww.qq.com
10 NS记录前可省略域名,TTL,IN,与SOA记录不同,需要记录所有的DNS服务器名称(包括主从)
11.A记录,DNS服务器名与和它对应的IP
配置文件检查语法:
启动服务:可以用systemctl restart named,也可以用rndc,表示重新加载配置文件,是DNS专用命令
测试是否可以解析,表明本机作为DNS服务器:
三、搭建从属DNS服务器
1.装包
2.启动服务,禁用selinux,关闭防火墙
3.设为开机自启动
4.更改配置文件
5.修改数据库文件
其中CentOS 7复制过来为加密状态,而CentOS 6是明文(实现主从复制,两种方式:push pull)
6.测试
四、搭建子域的DNS服务器
子域的服务器有三种情况:
1.若子域访问量较小,则可与上级域公用一个DNS服务器,即在主DNS服务器的数据库文件中添加一条记录,将子域当作主机记录来实现
2.子域作为一个独立域来实现
3.上级域和子域不在同一台主机上,即上级域将子域DNS的管理权委派给另一个DNS服务器
1.
zhengzhou后面没有加点,自动补后缀
测试
以上并没有以子域的方式来实现,而是当作一个主机(记录)来实现
2.访问量大的子域,作为一个独立域实现,但上级域和子域在同一个主机上
测试
3.级域和子域不在同一台主机上,即上级域将子域DNS的管理权委派给另一个DNS服务器
在上级域的DNS服务器上增加一个NS记录
在另一台主机上 设置数据库文件
测试