DNS服务之四:DNS子域授权

  假设这样一种场景,假设公司的规模扩展,有两个部门都希望实现自己服务器的管理。如test.com这个域名,以前所有页面都位于www.test.com这台主机上,若每个部门都需要自己的Web页面,因此可做如下处理:

    www.test.com/fin  财务部

    www.test.com/market  市场部

  但过一段时间,它们又希望使用自己的DNS主机,如:

    www.fin.test.com  财务部

    www.market.test.com  市场部

  此时该如何做呢?由此就引出子域授权的话题了。

正向区域授权:

  SUB_ZONE_NAME(子域区域名称) IN NS NSSERVER_SUB_ZONE_NAME(服务器子域区域名称)
  NSSERVER_SUB_ZONE_NAME IN A IP(服务器IP地址)

  例:.com服务器之下,有人注册了test.com这个域,因此需要在.com上建立:

    test.com.    IN  NS  ns1.test.com.

    ns1.test.com.  IN  A  192.168.241.10

    若再建立一个辅助DNS服务器ns2,ns2对应192.168.241.11,那么ns2是否能在互联网上被使用呢?

      分析过程:dig -t A www.baidu.com @192.168.241.10

        因为192.168.241.10与www.baidu.com不在同一个域,所以此时需要查找根:

          . --> .com --> test.com.,而前面已经定义过,test.com在.com上对应192.168.241.10,因此192.168.241.11不能被找到,即在互联网上无法被识别。

      因此,在子域中有几个DNS服务器,就应该建几条记录,如下:

    所以说假如test.com.已经由我们自己管理,我们有所有的操作权限,而且已经建立好一主一从服务器,现在期望能够授权子域,一个叫fin,一个叫market,并且子域可以自我管理,那么如何实现呢?

      在父域授权:即可,在服务区域数据文件添加记录:

        fin.test.com.    IN  NS  ns1.fin.test.com.

        fin.test.com.    IN  NS  ns2.fin.test.ocm.

        ns1.fin.test.com.    IN  A  192.168.241.8  ;注意:子域与父域无需在同一网段中

        ns2.fin.test.com.    IN  A  192.168.241.9

        

        market.test.com.   IN  NS  ns1.market.test.com.

        ns1.market.test.com. IN  A  192.168.241.108

  

  具体实现如下:

    编辑父域服务器中的主DNS服务器:

    查看从域名服务器:

    配置子域服务器:

      配置IP地址为192.168.241.8,搜索域为fin.test.com

      安装bind

      配置:

    测试:

      子域服务器:

      父域主服务器:(联系子域,让子域提供真正的信息)

      父域自己解析:

      Windows端使用nslookup测试:

  配置子域可找到父域在哪(通过转发即可实现):

    子域服务器:

  forward {only|first};    #指定为only时若解析不了,转发给指定的服务器;
                 #first则表示先转发给指定的服务器,若无结果,自己找根。

  forwarders {};  #指定转发给谁

  zone "ZONE_NAME" IN{
    type forward;
  };

    如实现全局转发:

              #会转发给父域处理

    只转发父域服务器:

原文地址:https://www.cnblogs.com/long-cnblogs/p/10518403.html