个人博客:http://wqmsl.blog.51cto.com/ 制做人:wqmsl缓存
问题: 一、辅助DNS不一样步(修改主serial值)安全
二、容许指定的辅助DNS复制数据allow-transfer 语句,指定哪一个client能够 来复制个人zone文件,这个参数也能够放在options字段,放options全局有效服务器
三、主服务器重启服务当即与辅助DNS服务器进行数据同步(zone中添加also- notify { 辅助DNS IP地址; };或者在全局options中声明,可使用notify yes;)网络
四、view(智能DNS)问题ide
五、转发服务器的配置学习
六、缓存服务器的配置测试
目的:搭建各类DNS服务器,包括以下:台主DNS服务器、辅助DNS服务器、DNS正 向区域的委派、反向区域的委派、智能DNS主机、缓存DNS服务器、转发DNS服务器。this
1、IP说明:3d
192.168.0.3——主机名:dns1.wqmsl.com 域:wqmsl.com 主DNS服务器日志
192.168.0.2——主机名:dns2.wqmsl.com 域:wqmsl.com 辅助DNS服务器
192.168.0.5——主机名:dns.bj.wqmsl.com 域:bj.wqmsl.com 被192.168.0.3委派DNS
2、前期准备
更改主机名称:一、hostname更改,二、hosts更改,三、/etc/sysconfig/network
配置如上所述的IP地址和主机DNS地址。
第一部分 主DNS搭建
所需软件包
一、bind-9.3.3-10.el5.i386.rpm
二、bind-libbind-devel-9.3.3-10.el5.i386.rpm
三、bind-sdb-9.3.3-10.el5.i386.Rpm
四、caching-nameserver-9.3.3-10.el5.i386.rpm
五、bind-devel-9.3.3-10.el5.i386.rpm
六、bind-chroot-9.3.3-10.el5.i386.Rpm(注意:bind-chroot软件包最后一个安装,不然肯能会报错)
开始搭建
咱们可使用yum以及rpm两种安装的方法安装组件
配置好yum光盘源以后(关于yum源配置请看“yum本地光盘源及VSFTP源搭建”)
注意:另外也可使用rpm安装方式,可是可能会出现依赖关系,一个一个安装便可。
在rhel5.4中采用了chroot安全机制,保护DNS数据不被***和盗用,因此在rhel4中DNS的/var/named的工做目录变成以下,
如图所示,rhel5.4 DNS的工做目录是/var/named/chroot
配置文件在/var/named/chroot/etc下,区域文件在/var/named/chroot/var/named/下
而后作以下操做:
添加 -a(-p) 的参数能够把原文档的全部属性所有复制,连同属组和属主。
编辑named.conf文档
修改后的文档如上,在这个文档里咱们不添加区域信息,全部的区域信息添加到named.rfc1912.zones,这个里面。
下面咱们添加正向和反向区域信息,以下
(zone中添加also-notify { 辅助DNS IP地址; };或者在全局options中声明,可使用notify yes;这样只要主服务器重启DNS服务则发送notify值,辅助服务器则会当即更新区域文件数据),保存并退出。
而后在添加区域文件,以下
在这里同样要加上-a或者是-p的参数,若是被复制的文件的属组不是named的话,DNS的服务会启动失败的。
上面的区域文件里面我记录了bj.wqmsl.com区域的委派,委派到主机名:dns.bj.wqmsl.com
的服务器。
注意:全部FQDN名称的后面都要加“.”。(个人图上截图的时候有的尚未加上“.”)
重启DNS服务(可使用service named reload 启动的速度快快点)
这里咱们的wqmsl.com的主域名服务器已经配置完了
下面咱们来配置辅助域名服务器
第二部分 辅助DNS配置
和主DNS同样,先使用yum或者rpm安装必要的软件包,这里就不说了,看主DNS所安装的包。
一样开始配置辅助域名服务器
复制主配置文件,以下:
主配置文件,配置以下
在"named.rfc1912.zones"添加辅助区域信息以下
每行后面必定要添加“;”,不然启动服务失败。
必须指定
file "slaves/区域文件名称"的位置,这里说的slaves的位置为 /var/named/chroot/var/named/slaves。
重启DNS服务便可
重启以后能够看到slaves目录下已经同步过来了区域文件,如今去主DNS上更改区域文件并更改Serial值,主服务器重启DNS服务,查看辅助DNS的区域文件,你会看到已经同步过来了,这就是在(zone中添加also-notify { 辅助DNS IP地址; };的好处,能够当即同步数据,你能够动态查看日志tail -f /var/log/messages 能够看到,当主服务器的区域文件被修改并重启服务,辅助服务器就会去同步数据。
为了数据的安全起见,咱们在主DNS服务器上指定由哪台服务器可以从我这里复制区域文件信息
在全局里面添加 allow-transfer { 辅助DNS的IP地址或者是IP的范围; },也能够添加到zone区域里面,这样,别的服务器就不能复制到本服务器的区域信息了。
第三部分 委派服务器的
在主域服务器dns1.wqmsl.com上添加了委派服务器NS的记录以后,直接在被委派的服务器dns.bj.wqmsl.com上搭建委派给本身的域bj.wqmsl.com ,剩下的就和主域服务器的步骤同样了!
第四部分 测试
主/辅助DNS服务器的DNS指向本身,被委派的服务器的DNS指向主域的IP
目的:主DNS上能够解析到委派DNS的全部记录,在委派的DNS上也能够解析到主域上面的全部记录,这样就成功搭建完了全部的服务器。
最后设置全部的服务器的DNS服务开机自动启动
[root@dns1 named]# chkconfig --level 35 named on
第五部分 常见的问题和注意事项
1、有时候肯能会遇到辅助服务器没有同步区域数据
一、肯定你的chroot目录named是否有写入的权限。
二、修改完主DNS的区域文件以后是否也同时修改了版本号,SOA记录的5个参数相互间是由限制的,好比refresh必须比retry 大三倍,具体比例我已经记不得了,之后碰见这个问题,能够本身去查查,serial是自定义的,通常是年月日,最后两位是当天的版本号。
三、是否主DNS服务器作了限制,默认状况下全部服务器均可以复制主服务器的区域信息,可是添加 allow-transfer { 辅助DNS的IP地址或者是IP的范围; } 参数以后则只有指定的服务器才能够复制本主DNS的区域信息。
第六部分 配置缓存域名服务器
下面咱们开始配置缓存域名服务器,缓存域名服务器配置很简单,不须要区域文件,配置好named.conf就能够了
通常电信的DNS都是缓存域名服务器,最要的就是下面两项
forward only; 指明这个服务器是缓存域名服务器
forwarders { 转发dns请求到那个服务器IP;} 是转发dns请求到那个服务器
这样一个简单的缓存域名服务器就架设成功了,通常缓存域名服务器都是ISP或者大公司才会使用
第七部分 配置文件中的各个参数的详细解释
named.conf主配置文件内容参数详解
1:选项配置以下:
◆ listen-on port 53 { 127.0.0.1; };这个是DNS侦听本机的端口及IP。这里设置表示只侦听127.0.0.1这个地址。如不定义此选项表示侦听全部网络
◆ directory “/var/named”指主配置文件路径,这个路径也是相对路径,它的绝对路径/var/named/chroot/var/named
◆ query-source port 53;客户端在进行DNS查询时必须使用53作为源端口
◆ allow-query { localhost; };容许提交查询的客户端,如不定义此选项表示容许全部查询
◆ allow-recursion {192.168.0.0/24;192.168.0.1/24}:容许提交递归查询的客户端,如不定义此选项表示容许全部
◆ allow-transfer {192.168.0.254;}:容许区域传输的DNS服务器(辅助DNS),不写表示容许全部
◆ forwarders {192.168.0.9;}:转发器
◆ forward only|first:only表示若是在指定的转发器找不到,不会去向根查询,first表示快速转发(默认)
2:定义主配置文件,此部分可有多个,只要求localhost_resolver这个名字不重复
◆ match-clients { localhost; };客户端的源IP
match-destinations { localhost; };解析出的目标IP
recursion yes;若是客户端提交的FQDN本服务器没有,那么服务器会帮助客户端去查询
◆ include “/etc/named.rfc1912.zones”; 指定主配置文件
上面参数中全部指定地址范围(如:listen-on、match-clients等)时均可以多个写法以下:
◆ 单个IP:192.168.0.1;
◆ 网段:192.168.0.0/24;
◆ 指定多个IP:192.168.0.1;192.168.0.2;
◆ 网段:192.168.0.;
还可使用!表示不包括
◆ none:不匹配全部
◆ any:匹配全部
◆ localhost:DNS主机
◆ localnet:与DNS主机同网段
区域文件内容详解
$TTL:DNS缓存时间,单位:秒
SOA记录
◆ 主域名服务器:区域的DNS服务器的FQDN
◆ 管理员:管理员的邮件地址中@用.代替
◆ 序列号:区域复制依据,每次主要区域修改完数据后,要手动增长它的值
◆ 刷新间隔:默认以秒为单位,也可如上图中写明时间单位,辅助DNS服务器请求与源服务器同步的等待时间。当刷新间隔到期时,辅助DNS服务器请求源服务器的SOA记录副本。而后,辅助DNS服务器将源服务器的SOA记录的序列号与其本地SOA记录的序列号比较,若是不一样,则辅助DNS服务器从主要DNS服务器请求区域传输。这个域的默认时间是900秒
◆ 重试时间:默认以秒为单位,也可如上图中写明时间单位,辅助DNS服务器在请求失败后,等待多长时间重试。一般这个应该短于刷新时间。默认为600秒
◆ 过时时间:默认以秒为单位,也可如上图中写明时间单位,当这个时间到期时,如辅助DNS服务器还没法与源服务器进行区域传输,则辅助DNS服务器会把它的本地数据看成不可靠数据。默认值是86400秒
◆ TTL:默认以秒为单位,也可如上图中写明时间单位区域的默认生存时间和缓存否认应答名称查询的最大间隔。默认值是3600秒
这种记录的写法
NS记录
区域名 IN NS FQDN
A资源记录
FQDN IN A IP地址
CNAME资源记录
别名 IN CNAME 主机名
MX资源记录
区域名 IN MX 5 邮件服务器的FQDN名
大多数的操做已经完成,稍后会有
一、反向区域的委派
二、智能主机的搭建
个人博客:http://wqmsl.blog.51cto.com/ 但愿你们一块儿和我学习进步 QQ:459176770