一步一步搭建主从DNS服务器

DNS服务做为基础的网络服务在互联网中处处存在,学习搭建DNS服务器是网络管理员的基本技能之一。linux


准备环境:vmware workstation 10vim

                 redhat 5.10 x86_64  虚拟机2台 
缓存

                 主DNS:192.168.195.129  ns1.jwh5566.com
安全

                                192.168.1.114  连外网   主要是客户端用来测试DNS是否递归查询的服务器

                 从DNS:192.168.195.128    ns2.jwh5566.com
网络

                 域名:jwh5566.com负载均衡

                 代理的客户端:192.168.195.130 131 132...
ide


安装linux,配置本地光盘yum源,配置ipoop

        此处省略1000字......学习


查看是否安装dns,dns服务的软件叫作bind,因此

yum list | grep "^bind"

能够看到有2个版本的bind,bind和bind97,bind是为了兼容之前老版本的,因此咱们要安装bind97,

系统默认安装了bind-utils,和bind-libs,请卸载

yum remove bind-utils  bind-libs -y


主DNS,192.168.195.129的配置

安装完成后会在/etc下生成/etc/named.conf文件和/var/named/目录


备份/var/named.conf文件,后面本身写

mv /etc/named.conf /etc/named.conf.bak

vim /etc/named.conf 相似以下,后面解释内容

wKiom1VYX1yCHd42AAGyUseRqWE207.jpg

wKiom1VYX1yjvIs8AAE0TdkWZQM848.jpg

options :定义了dns服务的工做特性

            directory:定义dns的区域数据文件所在目录,数据文件就是真正可以查找所须要的IP或者主机名的地方

            allow-recursion:指定容许代理那个网段的客户端去递归查询,不指定的话,互联网上全部的客户机都指定你的dns服务器去递归查询,你的服务器就要忙死了,因此这里指定代理本身域内的客户机去递归查询。(建议指定

"." 区域 :根域

                type:指定了域的类型 hint 表示根域,还有master表示主DNS的配置,slave表示从DNS的配置

                file:表示数据文件路径,此为相对路径,相对于/var/named而言

                named.ca里面记录了全球13台根DNS服务器的IP地址。

                allow-transfer:指定容许传输给其余的DNS服务器的列表

                                        none表示不传输,通常若是指定的话,就只指定给咱们本身的从DNS服务器便可,若是开放互联网的话,会有安全隐患。(建议指定)

"localhost" :本地域

                named.localhost:记录localhost的ip是127.0.0.1和::1

"0.0.127.in-addr.arpa":指定反向域查询的数据文件

                named.lookback:记录了127.0.0.1和::1对应的主机名是localhost


重点来了

"jwh5566.com": 咱们本身要代理的域

                        allow-transfer:指名容许将这个域信息传输给从服务器

"195.168.195.in-addr.arpa":jwh5566的反向域,即用IP来得到主机名

好了,到目前为止DNS的主配置文件 修改好了,下面去配置数据文件

在/var/named目录下named.ca和named.localhost,loopback都有因此不须要咱们编写,咱们只须要编写咱们自定义的便可。

vim wjh5566.com.zone  这是一个正向解析的数据文件

wKiom1VYZROw9LWUAAGcs4P5NGg173.jpg


$TTL:表示客户机在得到ip或者主机名以后缓存多久时间,这是一个全局的变量

ns1表示

下面每行表示一条记录,一次的格式是

主机名        IN            记录类型        IP

第一行的SOA记录有点特别,我来详细说下

@:表示取主配置文件中的域名,还记得前面引号里面的域名么?不错,@在这里就是只它

IN:关键字

SOA:记录类型, 其余的还有:

            NS:指名这个域的DNS服务器

            A:指名从主机名到IP

            PTR:指名从IP到主机名

            MX:指名邮件服务器

            CNAME:指名是哪一个服务器的别名

ns1.jwh5566.com.:指定DNS服务器(注意不要忘了最后的那个点)

admin.jwh5566.com:指定管理员的邮箱地址(注意不是@而是点,由于这@有特殊含义)

括号中的5个数字分别表示

                        2015051701       序列号:每一次更新数据文件,应该将序列号更新,以便从服务器判断从而进行更新
                        1H                      刷新时间:从服务器多久来访问一次,H表示小时
                        5M                     重试时间:从服务器访问失败以后,多久以后重试,M表示分钟
                        2D                      过时时间:此时间以后,断定主服务器down机 ,D表示天
                        6H )                    否认回答的保留时间:即在通知客户机没有查询到结果以后,多久时间不在相应客户机的查询


下面空白的表示继承@的域名,MX后面10表示邮件服务器的优先级通常是1~99



  下面来看看反向解析的数据文件

wKioL1VYbKnjlSlOAAGCX8F9eyw127.jpg

能够看到   方向解析的数据文件和正向的很相似

只须要将IP和主机名为止调换便可,可是这里的主机名要写全,由于这里的@不在表示“jwh5566.com”了,你知道表示什么吗?对咯,就是“195.168.192.in-addr.arpa”

至此,主DNS的配置就算完了,对于从DNS的配置就不要这么麻烦了,由于他会同步数据文件的。


从DNS,192.168.195.128的配置     

由于主配置文件大部分都相同,因此咱们cp主DNS的配置文件,稍加修改便可,

scp 192.168.195.129:/etc/named.conf /etc/named.conf

vim named.conf

                             wKiom1VYbV_A0___AAFknVOYZ6c738.jpg

file:数据文件为何要放在slaves目录下呢?由于named目录默认对于named用户不可写,因此咱们用slaves目录

masters:指定主DNS服务器的地址

其余地方都不须要修改,OK




启动主DNS服务器

    service named start

启动从DNS服务器

    service named start

查看主DNS服务器的日志

    tail /var/log/messages

wKiom1VYb9mBn7ZbAAPoxxUFLb0436.jpg

查看从DNS服务器named目录下已经有对应域的数据文件


那么咱们在主DNS修改jwh5566.com的数据文件会不会同步过去呢?咱们来试一下

编辑数据文件 在里面添加一行记录pop3或者sftp(注意要修改序列号,这里修改成2015051703)

重启dns服务,查看日志

wKioL1VYcvyRC2C7AAKyoNJOlxI513.jpg

看到发送的序列号了么 2015051703

注意下最后的IXFR表示增量更新,IXFR ended 表示增量更新结束,看下从DNS服务器的数据文件是否是同步了呢。




测试DNS服务器

dig 命令使用

    dig 命令能够测试DNS服务器

    -t:指定记录类型

    @指定用哪一个DNS服务器来查询(注意测试的时候要加哦,不然会默认使用本机系统的的DNS,就是/etc/resove.conf里面的dns服务器来解析的)


例如:查询jwh5566.com的NS的地址

dig -t NS jwh5566.com @192.168.195.129

wKiom1VYcwvRfxjvAAF0ZQjIrGA732.jpg

能够看到有2个DNS服务器,分别是129和128


查询下www.jwh5566.com的IP地址

dig -t A www.jwh5566.com @192.168.195.129

再执行下,是否是看到两次的DNS服务器在交替呢,这个就是所谓的DNS负载均衡啦

好啦,文章就写到这里,谢谢你们!

相关文章
相关标签/搜索