1. DNS服务器概念
在互联网上通信需要借助于IP地址,但人类对于数字的记忆能力远不如文字,那么将IP地址转换成容易记忆的 文字是个好办法,可是计算机只能识别0、1代码,这时就需要一种机制来解决IP地址与主机名的转换问题 DNS全称为Domain Name System,即域名系统,其作用就是将我们经常使用的“网址”解析为IP地址 。
主要分为正向解析和反向解析:
正向解析:将域名转换为IP
反向解析:将IP转换为域名
2. DNS服务器类型
主DNS服务器: 为客户端提供域名解析的主要区域,主DNS服务器宕机,会启用从DNS服务器提供服务
从DNS服务器 : 主服务器DNS长期无应答,从服务器也会停止提供服务 主从区域之间的同步采用周期性检查+通知的机制,从服务器周期性的检查主服务器上的记录情况,一旦发现 修改就会同步,另外主服务器上如果有数据被修改了,会立即通知从服务器更新记录
缓存服务器: 服务器本身不提供解析区域,只提供非权威应答
转发服务器: 当DNS服务器的解析区域(包括缓存)中无法为当前的请求提供权威应答时,将请求转发至其 它的DNS服务器,此时本地DNS服务器就是转发服务器
3. DNS服务器搭建,正向解析、反向解析
1.关闭防火墙
Selinux systemctl stop firewalld
systemctl disable firewalld
setenforce 0
getenforce
2.安装DNS服务器软件
yum install bind-chroot
#主配置文件/etc/named.conf
#区域配置文件/etc/named.rfc1912.zones,用来保存域名和IP地址对应关系
#数据配置文件目录/var/named,用来保存域名和IP地址对应关系的所在位置
3.修改主配置文件
vi /etc/named.conf
listen-on port 53 { any; }; #服务器上的所有IP地址均可提供DNS域名解析服务
allow-query { any; }; #允许所有人对本服务器发送DNS查询请求

4.修改区域配置文件
vi /etc/named.rfc1912.zones
#用来保存域名和IP地址对应关系的所在位置,在这个文件中,定义了域名与IP地址解析规则保存的文件位置以及服务类 型等内容,而没有包含具体的域名、IP地址对应关系等信息。服务类型有三种,分别为hint(根区域)、master(主区 域)、slave(辅助区域),其中常用的master和slave指的就是主服务器和从服务器
zone "zgs.com" IN {
type master; #服务类型
file "zgs.com.zone";#域名与IP地址解析规则保存文件
allow-update { none; }; #允许哪些客户机动态更新解析信息
}; #正向解析参数
zone "1.168.192.in-addr.arpa" IN { #表示为192.168.113.0/24网段的反射解析区域
type master;
file "192.168.113.arpa";
}; #反向解析参数

5.修改/etc/sresolv.conf
它是DNS客户机配置文件,用于设置DNS服务器的IP地址及DNS域名,还包含了主机的域名搜索顺序。该文件是由域名解析器(resolver,一个根据主机名解析IP地址的库)使用的配置文件。它的格式很简单,每行以一个关键字开头,后接一个或多个由空格隔开的参数。
resolv.conf的关键字主要有四个,分别是:
nameserver //定义DNS服务器的IP地址
domain //定义本地域名
search //定义域名的搜索列表
sortlist //对返回的域名进行排序

6.正向解析
6.1
vi /etc/named.rfc1912.zones #可在原有的基础上进行修改,也可清空,保留只用的信息
zone "zgs.com" IN {
type master;
file "zgs.com.zone";
allow-update { none; };
}; #named-checkzone 检测zone文件的配置
6.2 #编辑数据配置文件。
从/var/named目录中复制一份正向解析的模板文件(named.localhost),然后把域名和IP地址 的对应数据填写数据配置文件中并保存。在复制时记得加上-a参数,这可以保留原始文件的所有者、所属组、权限属性 等信息
cd /var/named
cp -a named.localhost zgs.com.zone
vi zgs.com.zone

6.3 启动服务及测试
systemctl restart named
yum install bind-utils -y #bind-utils为客户端 测试dns使用
nslookup
> www.zgs.com
Server: 192.168.113.128
Address: 192.168.113.128#53 #其它也要测试,这里省略

7.反向解析
#反向解析的作用是将用户提交的IP地址解析为对应的域名信息,它一般用于对某个IP地址上绑定的所有域名进行整体屏 蔽,屏蔽由某些域名发送的垃圾邮件
7.1
vi /etc/named.rfc1912.zones
zone "113.168.192.in-addr.arpa" IN {
type master;
file "192.168.113.arpa";
};
7.2 编辑配置文件
#从/var/named目录中复制一份反向解析的模板文件(named.loopback),然后把下面的参数填写到文件中
cd /var/named
cp -a named.loopback 192.168.113.arpa
vi 192.168.113.arpa

7.3 测试
systemctl restart named
nslookup
> 192.168.113.1

8. DNS高级之主从服务
#由于上边已部署主服务器,下主要介绍从服务器
#在DNS域名解析服务中,从服务器可以从主服务器上获取指定的区域数据文件,从而起到备份解析记录与负载均衡的作 用,因此通过部署从服务器可以减轻主服务器的负载压力,还可以提升用户的查询效率
#测试需要两台服务器!主192.168.113.128,从192.168.113.129
8.1 #在主服务器的区域配置文件中允许该从服务器的更新请求,即修改allow-update {允许更新区域信息的主机地址;};参 数,然后重启主服务器的DNS服务程序
vi /etc/named.rfc1912.zones
zone "zgs.com" IN {
type master;
file "zgs.com.zone";
allow-update { 192.168.113.129; };
};
zone "113.168.192.in-addr.arpa" IN {
type master;
file "192.168.113.arpa";
allow-update { 192.168.113.129; };
}; systemctl restart named

8.2 #在从服务器中填写主服务器的IP地址与要抓取的区域信息,然后重启服务。注意此时的服务类型应该是slave(从), 而不再是master(主)。masters参数后面应该为主服务器的IP地址,而且file参数后面定义的是同步数据配置文件后 要保存到的位置,稍后可以在该目录内看到同步的文件
vi /etc/named.rfc1912.zones
zone "zgs.com" IN {
type slave;
masters { 192.168.113.128; };
file "slaves/zgs.com.zone";
};
zone "113.168.192.in-addr.arpa" IN {
type slave;
masters { 192.168.113.128; };
file "slaves/192.168.113.arpa";
};
systemctl restart named

8.3 #检验解析结果。
当从服务器的DNS服务程序在重启后,一般就已经自动从主服务器上同步了数据配置文件,而且该文件 默认会放置在区域配置文件中所定义的目录位置中。随后修改从服务器的网络参数,把DNS地址参数修改成 192.168.113.129,这样即可使用从服务器自身提供的DNS域名解析服务。后就可以使用nslookup命令顺利看到解析结果了
cd /var/named/slaves
ls #注意从服务器会同步主服务器的文件!


1766

被折叠的 条评论
为什么被折叠?



