DNS快速配置实验

DNS快速配置实验:

Linux下实现DNS程序为bind.x86_64,值得注意的是运行的程序为/usr/sbin/named,测试DNS的dig工具需安装bind-utils.x86_64包.

正向解析:

主DNS服务器ip地址:172.16.252.87
从DNS服务1器ip地址:172.16.251.65

DNS主配置文件:/etc/named.conf需要配置的主要部分

    listen-on port 53 { 127.0.0.1; 172.16.252.87; };  //更改监听地址
    allow-query     { any; };    //允许所有人访问
    dnssec-enable no;     //关闭安全功能
    dnssec-validation no;

辅助配置区域文件:/etc/named.rfc1912.zones

    zone "zc.com" IN {  //定义一个区域
    type master;        //类型为主
    file "zc.com.zone";    //指定区域解析文件
    };

配置区域解析文件:/var/named/zc.com.zone

    $TTL 600         //设定TTL值
    zc.com.         IN      SOA     zc.com.   nsadmin.zc.com. (
    //固定格式: 区域名    IN    类型        域    管理员域
            2017052301        //解析配置版本号
            1H                //刷新时间
            5M                //重试时间
            1W                //过期时间
            6H )            //否定回答时间
            IN      NS      dns1.zc.com.//指定主dns域名
            IN      NS      dns2.zc.com.//指定从dns域名
    dns1.zc.com.    IN       A      172.16.252.87
    //定义dns域名解析记录
    dns2.zc.com.    IN      A       172.16.252.87
    www.zc.com.     IN      A       172.16.0.1
    web             IN      CNAME   www   //指定域名别名

重载named配置文件:

    rndc reload

更改本机dns服务器地址:

    ~]# cat /etc/resolv.conf 
    ; generated by /sbin/dhclient-script
    nameserver 172.16.252.87

检查语法错误:

    # named-checkzone  ZONE_NAME   ZONE_FILE
    # named-checkconf

dig 工具的安装:

    ~]# yum install  bind-utile
    ~]# dig -t A www.zc.com @172.16.252.87
    //看到如下的解析记录
    ; <<>> DiG 9.9.4-RedHat-9.9.4-37.el7 <<>> -t A www.zc.com @192.168.1.251
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21420
    ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 4096
    ;; QUESTION SECTION:
    ;www.zc.com.            IN    A

    ;; ANSWER SECTION:
    www.zc.com.        600    IN    A    172.16.252.39

    ;; AUTHORITY SECTION:
    zc.com.            600    IN    NS    dns2.zc.com.
    zc.com.            600    IN    NS    dns1.zc.com.

    ;; ADDITIONAL SECTION:
    dns1.zc.com.        600    IN    A    172.16.252.87
    dns2.zc.com.        600    IN    A    172.16.252.39
    //可看到域名对应的主机
    ;; Query time: 0 msec
    ;; SERVER: 192.168.1.251#53(192.168.1.251)
    ;; WHEN: Tue May 30 12:13:30 EDT 2017
    ;; MSG SIZE  rcvd: 125

DNS的反向解析:将IP地址解析为域名

1.区域配置文件:

    zone "16.172.in-addr.arpa" IN {
          //ip地址反写,并注明固定后缀
            type master;    //类型为主服务器
            file "172.16.zone"; //指明解析文件
    };
            zone "16.172.in-addr.arpa" IN {
            type master;
            file "172.16.zone";
    };
    // zone "16.172.in-addr.arpa"  固定格式:网段的反写.in-addr.arpa

主从DNS配置:

注:注意开放端口,或临时关闭防火墙
主服务器配置:
1.在主配置文件中,将动从服务dns的NS记录添加至配置文件
从服务器配置:
2.配置完成主配置文件后,在辅助配置文件中添加

(1)正向解析

zone "z.com" IN {
    type slave;
    file "slaves/z.com.zone";
    masters { 172.16.252.87; };
};

(2)反向解析

zone "16.172.in-addr.arpa" IN {
    type  slave;
    file "slaves/172.16.zone";
    masters { 172.16.252.87; };
 };

出于安全考虑权限及属组修改:

    # chgrp  named  /var/named/172.16.100.zone
    # chmod  o=  /var/named/172.16.100.zone

DNS的子域授权配置:

主dns服务器的配置:

1.在主DNS服务器的区域解析配置文件中指明子域dns的服务器的地址

    ops.zc.com.     IN      NS      dns1.ops.zc.com.
    dev.zc.com.     IN      NS      dns1.dev.zc.com.
    dns1.ops        IN      A       172.16.251.65
    dns1.dev        IN      A       172.16.254.32

子域授权dns服务器:

2.安装bind,并做好主配置文件(类似正向解析配置)
       辅助配置文件中/etc/named.rfc1912.zones指明对子域的配置

    zone "ops.zc.com" {
        type master;
        file "ops.zc.com.zone";
    };

3.自定义区域解析文件/var/named/ops.zc.com.zone(文件名与辅助配置中相同)

    $TTL 3600
    @         IN    SOA     ops.zc.com.  nsadmin@ops.zc.com. (
            2017052401
            1H    
            5M
            3D    
            2H )
    @        IN     NS    dns1
    dns1        IN      A    172.16.251.65
    www        IN     A    172.16.252.87

DNS转发域:

由于dns只有父域可以解析子域,而子域不能得知父域在何处
   需要定义一个转发域,当解析这个域时转发至父域所在的dns服务器

zone "zc.com" {
    type forward;
    forward only;
    forwarders { 172.16.252.87; 172.16.251.65; }    ;
};

    forward only;的含义:当解析该域时转发给dns指定的服务器,成功与否与自己无关
    forward first;的含义:解析不到则自己去迭代查询

全局转发:配置/etc/named.conf

options{
    forward only;
    forwarders { 172.16.}
}

bind安全配置acl:

acl:访问控制列表:将一个或多个ip归类为一个统一命名的集合,引用此命名定义

主配置文件定义:

acl  test {
    172.16.254.32;
};

辅助配置文件:

zone "ops.zc.com" {
    type master;
    allow-query { test; };
    file "ops.zc.com.zone";
};

以上是DNS基本服务的快速配置实验.