一、子域授权

子域授权是实现DNS分布式数据库的一种手段, 每个域的名称服务器都是通过其上级名称服务器在解析库进行授权, 类似于根域授权TLD.

正向解析区域的子域授权方法:

# 定义一个子区域:
ops.magedu.com.     IN      NS      ns1.ops.magedu.com.
ops.magedu.com.     IN      NS      ns2.ops.magedu.com.
ns1.ops.magedu.com. IN      A       1.1.1.1
ns2.ops.magedu.com. IN      A       1.1.1.2

# 定义转发服务器:
# NOTE: 被转发的服务器需要能够为请求者做递归, 否则, 转发请求不予进行

# 全部转发: 凡是非本机所负责解析的区域的请求, 统统转发给指定服务器
# 配置方法: 在主配置文件的Options区域中加入以下内容:
    Options {
        forward {first|only;
        forwarders { 转发器IP1;[ ...;] };
    };

# 区域转发: 仅转发对特定的区域的请求至某服务器:
zone "ZONE_NAME" IN {
    type forward;
    forward {first|only}
    forwarders { 转发器IP1;[ ...;] };
};

# NOTE: 关闭dnssec功能
dnssec-enable no;
dnssec-validation no;

配置示例:

# 首先在本地的一台主DNS服务器的区域解析库文件加入如下配置:
ops IN      NS      ns1.ops
ns1.ops IN      A       192.168.123.101

# 在主DNS服务的/etc/named.rfc1912.zones文件中指定转发器
zone "ops.leistudy.com" IN {
        type forward;
        forward only;
        forwarders { 192.168.123.101; }; # 转发器要指向子域dns服务器
};

# 然后在子域的DNS服务器上进行如下配置
$TTL 86400
$ORIGIN ops.leistudy.com.
@       IN      SOA     ns1.ops.leistudy.com.       admin.ops.leistudy.com (
                        2018033001
                        1H
                        5M
                        7D
                        1D
)

        IN      NS      ns1
ns1     IN      A       192.168.123.101
www     IN      A       192.168.123.101

# 在主域和子域服务器上重新加载配置文件
[root@leistudy ~]# rndc reload
server reload successful

# 测试
[root@leistudy ~]# dig -t A www.ops.leistudy.com @192.168.123.100

; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7_4.2 <<>> -t A www.ops.leistudy.com @192.168.123.100
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57299
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

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

;; ANSWER SECTION:
www.ops.leistudy.com.   86262   IN      A       192.168.123.101

;; AUTHORITY SECTION:
ops.leistudy.com.       86262   IN      NS      ns1.ops.leistudy.com.

;; ADDITIONAL SECTION:
ns1.ops.leistudy.com.   86262   IN      A       192.168.123.101

;; Query time: 0 msec
;; SERVER: 192.168.123.100#53(192.168.123.100)
;; WHEN: Fri Mar 30 16:08:51 CST 2018
;; MSG SIZE  rcvd: 99