DNS子域委派配置案例[转载]

最近在研究linux dns 在51上面看见这篇文章,感觉讲的很透彻,随转载,方便以后自己查阅

原文地址:http://www.51osos.com/a/Linux_CentOS_RedHat/Linuxgaoji/2010/1005/143.html

时间:2010-10-05 10:35来源:51开源原创 作者:飘飞的夜 点击: 次
大家好,今天 51 开源接着给大家介绍 DNS 子域委派是怎么配置的。那么什么是子域委派呢,其实没什么复杂,就是将子域的查询工作交给子域的 DNS 服务器。我以一个案例说明,大家能明白得更好。 案例:假如现有父域 51osos.com , DNS 服务器地址为 192.168.1.
 

     大家好,今天51开源接着给大家介绍DNS子域委派是怎么配置的。那么什么是子域委派呢,其实没什么复杂,就是将子域的查询工作交给子域的DNS服务器。我以一个案例说明,大家能明白得更好。

   案例:假如现有父域51osos.com,DNS服务器地址为192.168.1.2,其下面有一子域为sub.51osos.com,现想将sub.51osos.com的查询解析工作交给委派给子域的DNS服务器192.168.1.200。那么怎么实现呢,可能有人看过本站我的其他关于DNS配置的文章,想到用forward来定义,其实不需要这么做。具体实现如下:
一、   配置sub.51osos.com的DNS服务器
安装bind这里不详述了,本站有详细文章介绍。
#rpm bind-9.3.6-4.P1.e15
#rpm caching-nameserver-9.3.6-4.P1.e15
#rpm bind-chroot--9.3.6-4.P1.e15
--修改配置文件
#vi /var/named/chroot/etc/named.conf
options {
       directory “/var/named”;
       recursion yes;
       allow recursion {192.168.1.0/24;};
}
zone “sub.51osos.com” {
     type master;
     file “sub.51osos.zone”;
     allow-updata {none;};
};
#vi /var/named/chroot/var/named/sub.51osos.zone
$TTL 86400
$ORIGIN sub.51osos.com.
sub.51osos.com. IN SOA ns.sub.51osos.com. admin.sub.51osos.com. (
            2010100401
            1H
            10M
           1W
           1D)
@            IN    NS ns.sub.51osos.com.
ns.51osos.com.        IN A      192.168.1.200      
www.sub.51osos.com. IN A      192.168.1.200
--启动服务
#service named start
二、配置51osos.com的DNS服务器
#rpm bind-9.3.6-4.P1.e15
#rpm caching-nameserver-9.3.6-4.P1.e15
#rpm bind-chroot--9.3.6-4.P1.e15
#vi /var/named/chroot/etc/named.conf
options {
       directory “/var/named”;
       recursion yes;
       allow recursion {192.168.1.0/24;};
}
zone “51osos.com” {
     type master;
     file “51osos.zone”;
     allow-updata {none;};
};
#vi /var/named/chroot/var/named/51osos.zone
$TTL 86400
$ORIGIN 51osos.com.
51osos.com. IN SOA ns.51osos.com. admin.51osos.com. (
            2010100401
            1H
            10M
           1W
           1D)
51osos.com.     IN NS ns.51osos.com.
sub            IN NS ns.sub.51osos.com   //添加这两行,很重要噢
ns.sub          IN A   192.168.1.200
ns.51osos.com.     IN A   192.168.1.2       
www.51osos.com. IN A   192.168.1.2
--启动服务
#service named start
三、   测试
#nslookup www.sub.51osos.com
如果是由192.168.1.200解析的,则表示委派成功了噢。
 
 
追加
###################

DNS的委派 
   很多资料并没有写什么是DNS委派。而DNS委派又是一个比较重要的概念。到底什么DNS委派?就是把解析某个区域的权利转交给另外一台DNS服务器。 
比如说,A主机可以解析.com 域而A主机上还需要解析.com 的一个子域.test.com 如果全部由A主机解析的话,那很可能A主机的负载会过重。如何解决这个问题,人们通常会找另外一台主机B来专门解析.test.com域。这样A主机的负载就会减小从而加快解析速度。这很合理,也很容易实现。 
可是这里存在一个问题。我们再次回顾解析一个完整域名的过程。假设我们现在需要解析www.test.com 。DNS肯定先找根域,然后再找A主机,因为.com 域的都由A主机解析,但是A主机只解析.com域,并不解析.test.com 这个子域。如何解决这个问题,其实很简单。只需要在A主机的/etc/named.conf文件中声明.test.com域。  
 

1 zone "com" IN {
2             type master;
3             file "com";
4 };
5 zone "test.com" IN {
6             type master;
7             file "test.com";
8 };

    
意思是说我可以解析test.com 这个域 
然后在test.com的配置文件中添加一条NS纪录和一个A纪录  
 
 vi /var/named/chroot/var/named/test.com


 
 

$TTL    86400
      2 @             SOA    test.test.com. admin.test.com.  (
      3                                       1997022700 ; Serial
      4                                       28800      ; Refresh
      5                                       14400      ; Retry
      6                                       3600000    ; Expire
      7                                       86400 )    ; Minimu
      8 
      9 
             test.com.   IN   NS     B.test.com.
             B          IN    A         192.1681.99

图中NS纪录是说有需要解析.test.com域的去找B.test.com主机 而下一行的A纪录是说B.test.com主机所对应的IP地址为192.168.1.99 如此一来,A主机就把解析test.com域的权利全部转交给了B主机 这个过程就是靠一条NS纪录和一条A纪录实现的 这条NS纪录也称为委派纪录 
由此可见A主机为了减少自己的负载,做了一个权利下放的过程,把权力下放给主机B。这就像村长管理一个村子一样,如果村子人比较少,一个村长就够了,但是如果村子大了,人多了 ,一个人可就管不过来了,那怎么办,权力下放,任命几个村干部来分担管理工作。DNS也是如此。父级DNS把解析子域的权力下放,这个过程就叫委派。  
委派的应用环境 
区域委派适用于许多环境,常见的场景有: 
1、将某个子区域委派给某个对应部门中的DNS服务器进行管理;  
     2、DNS服务器的负载均衡,将一个大区域划分为若干小区域,委派给不同的DNS服务器进行管理;       3、将子区域委派给某个分部或远程站点。  
 
这是有问题的 
应该在com.zone文件里声明子域test.com

test.com   IN  NS  B.test.com 

B.test.com IN A    192.168.1.99  

在B.test.com的主机上声明test.com.zone这个域 

test.com   IN   NS   B.test.com 

B.test.com IN  A     192.168.1.99

 www.test.com IN A 192.168.1.99 就可以了

原文地址:https://www.cnblogs.com/y724107196/p/4022305.html