Internet域名空间
    Internet域名空间结构为一棵倒置的树,并进行层次划分。

    由树根到树枝,也就是从DNS根到下面的节点,按照不同的层次,进行了统一的命名。

    域名空间最顶层,DNS根称为根域(root)。

    根域的下一层为顶级域,又称为一级域。

    其下层为二级域,再下层为二级域的子域,按照需要进行规划,可以为多级。

    所以对域名空间整体进行划分,由最顶层到下层,可以分成:根域、顶级域(一级域)

    二级域、子域,其中域中能包含主机和子域。


区(Zone)                  域:Domain,逻辑概念
                                    区域:zone,物理概念

   区是DNS名称空间的一个连续部分,其包含了一组存储在DNS
   服务器上的资源记录。每个区都位于一个特殊的域节点,但区并不是域。
   DNS域是名称空间的一个分支,而区一般是存储在文
   件中的DNS名称空间的某一部分,可以包括多个域。一个域可
   以再分成几部分,每个部分或区可以由一台DNS服务器控制。
   使用区的概念,DNS服务器回答关于自己区中主机的查询,它是哪个区的授权服务器。


正向解析和反向解析 
正反向解析技术不同,因此不应该存放于同一个数据库文件中进

 1)正向解析
正向解析是指域名到IP地址的解析过程。

 2)反向解析
反向解析是从IP地址到域名的解析过程。反向解析的作用为服务器的身份验证。


BInd的基本概况:

主配置文件:定义区域/etc/named.conf

1 options {
       listen-on port 53 { 172.16.249.24; };
       listen-on-v6 port 53 { ::1; };
       directory       "/var/named";
       dump-file       "/var/named/data/cache_dump.db";
       statistics-file "/var/named/data/named_stats.txt";
       memstatistics-file "/var/named/data/named_mem_stats.txt";
       allow-query     { localhost; };
       recursion yes;
        
       dnssec-enable yes;
       dnssec-validation yes;
       dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

2 logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };  

3  zone "." IN {
        type hint;
        file "named.ca";
};

正向解析

定义配置文件域为"wowowo.com"

options {
        directory"/var/named";
};
 
zone "." IN {
        type hint;
        file "named.ca";
};
 
zone "localhost." IN {
        type master;
        file "named.localhost";
};
 
zone "1.0.0.127.in-addr.arpa" IN {
type master;
        file "named.loopback";
};
 
zone "wowowo.com." IN {
        type master;
        file "wowowo.com.zone";
};

资源记录中的文件名一定与配置文件中的定义的名称一致
配置资源记录

$TTL 600
@       IN      SOA     dns.wowowo.com. admin.wowowo.com. (
                        2015020001
                        2H
                        10M
                        7D
                        1D
)
        IN      NS      dns.wowowo.com.
        IN      MX 10   mail
dns     IN      A       192.168.1.110
mail    IN      A       192.168.1.111
www     IN      A       192.168.1.110
ftp     IN      CNAME   www

方向解析

zone "1.168.192.in-addr.arpa." IN {
        type master;
        file "192.168.1.zone";
};
语法格式

资源记录的格式

$TTL 600
@       IN      SOA     dns.wowowo.com. admin.wowowo.com. (
                        2015020002
                        2H
                        10M
                        7D
                        1D
)
        IN      NS      dns.wowowo.com.
110     IN      PTR     dns.wowowo.com.
110     IN      PTR     www.wowowo.com.
111     IN      PTR     mail.wowowo.com.


主从:(bind的版本主的可以低于从)

向区域中添加从服务器的关键两步
      在上级获得授权
      在区域数据文件中为从服务器添加一条NS记录和对应的A或PTR记录

格式为正向 (反向)同步  
 42 zone "wowowo.com" IN {
 43         type slave;
 44         masters { 192.168.1.110; };
 45         file "slaves/wowowo.com.zone";
 46 };
 47  
 48 zone "1.168.192.in-addr.arpa" IN {
 49         type slave;
 50         masters { 192.168.1.110; };
 51         file "slaves/192.168.1.zone";
 52 };

资源记录配置(主服务器上要添加一条对应从服务器的NS记录,否则不会通知从服务器更新)

主服务器/var/named/正向配置格式
$TTL 600  
@       IN      SOA     dns.wowowo.com. admin.wowowo.com. (
                        2015020005
                        3M
                        6M
                        9M
                        1D
)
        IN      NS      dns.wowowo.com.
        IN      NS      dns1.wowowo.com.
        IN      MX 10   mail
dns     IN      A       192.168.1.110
mail    IN      A       192.168.1.111
dns1    IN      A       192.168.1.108
www     IN      A       192.168.1.110
ftp     IN      CNAME   www
img     IN      A       192.168.1.112
反向配置格式
$TTL 600
@       IN      SOA     dns.wowowo.com. admin.wowowo.com. (
                        2015020004
                        2H
                        10M
                        7D
                        1D
)
        IN      NS      dns.wowowo.com.
        IN      NS      dns1.wowowo.com.
110     IN      PTR     dns.wowowo.com.
110     IN      PTR     www.wowowo.com.
111     IN      PTR     mail.wowowo.com.
108     IN      PTR     dns1.wowowo.com.
112     IN      PTR     img.wowowo.com.

BIND子域授权的实现:
   在父域的配置文件中添加如下项:
      授权的子区域名称
      子区域的名称服务器
      子区域的名称服务器的IP地址

首先
[root@localhost named]# vim /var/named/wowowo.com.zone 

$TTL 600
@       IN      SOA     dns.wowowo.com. admin.wowowo.com. (
                        2015020008
                        3M
                        6M
                        9M
                        1D
)
        IN      NS      dns.wowowo.com.
        IN      NS      dns1.wowowo.com.
        IN      MX 10   mail
dns     IN      A       192.168.1.103
mail    IN      A       192.168.1.111
dns1    IN      A       192.168.1.108
www     IN      A       192.168.1.103
ftp     IN      CNAME   www
img     IN      A       192.168.1.112
hehe    IN      NS      dns.hehe.wowowo.com.
dns.hehe.wowowo.com. IN A       192.168.1.106
~

添加一条NS记录和A记录(记得别忘记载入)

这条记录就是授权子域的链接简称(glue record:胶水效果)

子域区空间增加

[root@localhost named]# vim /etc/named.rfc1912.zones 
zone "hehe.wowowo.com" IN {
        type master;
        file "hehe.wowowo.com.zone";
};

对应文件名

[root@localhost named]# vim /var/named/hehe.wowowo.com.zone 

$TTl 600
@       IN      SOA     dns.hehe.wowowo.com. dnsadmin.hehe.wowowo.com. (
                        2015092101
                        1H
                        5M
                        3D
                        1D )
        IN              NS      dns
        IN              MX 10   mail
dns     IN              A       192.168.1.106
www     IN              A       192.168.1.116
mail    IN              A       192.168.1.119
~

子域解析父域

子域配置文件中需添加的选项

};
zone "wowowo.com" IN {
        type forward;
        forwarders {  192.168.1.108; };
};
[root@localhost named]# dig -t A www.wowowo.com @192.168.1.106

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -t A www.wowowo.com @192.168.1.106
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28463
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.wowowo.com.            IN    A

;; ANSWER SECTION:
www.wowowo.com.        600    IN    A    192.168.1.103

;; AUTHORITY SECTION:
wowowo.com.        600    IN    NS    dns.wowowo.com.
wowowo.com.        600    IN    NS    dns1.wowowo.com.

;; ADDITIONAL SECTION:
dns1.wowowo.com.    600    IN    A    192.168.1.108
dns.wowowo.com.        600    IN    A    192.168.1.103

;; Query time: 3 msec
;; SERVER: 192.168.1.106#53(192.168.1.106)
;; WHEN: Wed Sep 23 18:22:17 2015
;; MSG SIZE  rcvd: 117

假设一种情况:子域连客户端  解析子域的直接转向自己负责的 否则就直接转入能解析互联网的域名

需要在子域主配置文件中写入forward first;forwarders { ip };

options {
#       listen-on port 53 { 127.0.0.1; };
#       listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
#       dump-file       "/var/named/data/cache_dump.db";
#        statistics-file "/var/named/data/named_stats.txt";
#        memstatistics-file "/var/named/data/named_mem_stats.txt";
#       allow-query     { localhost; };
        recursion yes;
 
#       dnssec-enable yes;
#       dnssec-validation yes;
#       dnssec-lookaside auto;
 
        /* Path to ISC DLV key */
#       bindkeys-file "/etc/named.iscdlv.key";
 
#       managed-keys-directory "/var/named/dynamic";
        forward first;
        forwarders { 192.168.1.0 };
};