美文网首页运维
搭建DNS服务器

搭建DNS服务器

作者: 天夭夭 | 来源:发表于2018-01-29 17:37 被阅读17次

    搭建基础环境:Centos7.2

    1、安装最新的bind软件

    #yum install bind* -y

    2、修改配置

    安装完之后 配置文件将位于 /etc/named.conf

    配置文件中第一段中最重要的为第一段,详明资源记录的目录。

    其中 /var/named/ 区域数据文件

    配置文件中还需要定义其他区域的类型及数据文件。

    其中named.ca为根数据文件

    named.localhost定义了本机的回环数据文件(正向解析)

    named.loopback定义了本机的回环数据文件(反向解析)

    3、记录类型

    A记录:地址记录,用来指定域名的IPv4地址(如:8.8.8.8),如果需要将域名指向一个IP地址,就需要添加A记录。

    CNAME: 如果需要将域名指向另一个域名,再由另一个域名提供ip地址,就需要添加CNAME记录。

    TXT:在这里可以填写任何东西,长度限制255。绝大多数的TXT记录是用来做SPF记录(反垃圾邮件)。

    NS:域名服务器记录,如果需要把子域名交给其他DNS服务商解析,就需要添加NS记录。

    AAAA:用来指定主机名(或域名)对应的IPv6地址(例如:ff06:0:0:0:0:0:0:c3)记录。

    MX:如果需要设置邮箱,让邮箱能收到邮件,就需要添加MX记录。

    SRV:记录了哪台计算机提供了哪个服务。格式为:服务的名字、点、协议的类型,例如:_xmpp-server._tcp。

    4、区域类型

    主区域:master

    从区域:slave

    根区域:hint

    转发区域:forward

    启动服务前查看配置文件及数据文件是否有误

    命令:

    #named-checkconf 检测named.conf 语法格式,不能检查逻辑错误

    #namad-checkzone " " 目标路径 检测/var/named/中对应的文件是否存在语法错误

    5、启动服务

    systemctl start named

    DNS: 监听的协议及端口:

    53/udp

    53/tcp

    953/tcp, rndc

    可以使用dig、nslookup 命令进行DNS解析测试。

    #dig -t A oa.mabeyx.com @192.168.12.118 -t指定类型、指定解析域名、指定DNS服务器

    #nslookup server 192.168.12.118


    6、配置文件(主DNS服务器:named.conf)

    acl innet {                                                          #定义网段组

    192.168.129.0/24;

    };

    options {

    directory "/var/named";

    recursion yes;                                                   #允许任意查询进行递归

    allow-recursion { 192.168.12.0/24; };         #定给某个网段递归

    querylog no;                                                     #开启用户使用记录日志功能,不建议开启

    };

    zone "." IN {                                                     #说明13台根服务器的地址

    type hint;

    file "named.ca";

    };

    zone "mabeyx.com" IN {

    type master;                                                     #说明该类型为主从服务器

    file "mabeyx.com.zone";                               #说明数据文件存放于/var/named/mabeyx.com.zone

    allow-transfer { 192.168.12.119; };              #允许单个主机来查询所有数据记录

    };

    7、配置文件(从DNS服务器:named.conf)

    zone "mabeyx.com" IN {

    type slave;

    file "slaves/mabeyx.com.zone";

    masters { 192.168.12.118; };                      #说明主服务器是哪个主机

    allow-transfer { none; };                            #允许单个主机来查询所有数据记录

    8、智能DNS服务器:(CDN的部分实现机制)

    view telecom {                                  #视图功能

    match-clients { any; };                    #当访问的IP段为any内是使用telecom.mabeyx.com.zone进行解析

    zone "mabeyx.com" IN {

    type master;

    file "telecom.mabeyx.com.zone";

    };

    };

    view unicom {

    match-clients { innet; };                  #当访问的IP段为innet内是使用unicom.mabeyx.com.zone进行解析

    zone "mabeyx.com" IN {

    type master;

    file "unicom.mabeyx.com.zone";

    };

    };

    备注:zone文件需要保持权限为640,且named为属主或属组

    9、其他说明

    配置文件:

    recursion yes; 详明允许被递归。 递归将消耗大量资源

    allow-recursion { 192.168.12.0/24; } 声明只允许该网段请求的允许使用递归。

    ----------------------------------------------------------------------------------------------------------------------------

    zone文件一般格式:

    $TTL 43200

    @                IN                 SOA                   mabeyx.com.                       admin.mabeyx.com. (

                                                                         2017052701                         #版本号,每次更改配置后都需要更换

                                                                         1H                                          #更新频率(Refresh)。即slave向master要求数据更新的频率

                                                                         5M                                         #失败重新尝试时间(Retry)导致slave无法对master达成联机

                                                                         2D                                          #失效时间(Expire)。

                                                                         6H )

                        IN                   NS                    ns1

                        IN                   MX   10           mail

    ns1              IN                   A                      192.168.12.118

    oa               IN                   A                       192.168.12.232

    mail           IN                   A                       192.168.12.177

    *                 IN                    A                      192.168.12.120

    qq              IN                    A                      192.168.12.122

    10、心得

        目前大多数情况下是没必要去自建DNS服务器,搭建DNS简单但维护有些麻烦,自建DNS服务器无非是想让域名快速指向期望的IP地址,而不想在公网上饶一圈,一般来说这种情况并不多,使用本地的hosts文件劫持即可满足了,当需要劫持数达到一定量级,且有专人去维护时再考虑自建DNS。

    相关文章

      网友评论

        本文标题:搭建DNS服务器

        本文链接:https://www.haomeiwen.com/subject/kzqfzxtx.html