1. 程式人生 > >DNS解析與Bind的使用(7)——子域授權、轉發及訪問控制列表配置

DNS解析與Bind的使用(7)——子域授權、轉發及訪問控制列表配置

訪問控制 子域授權 轉發

十四、Bind軟件的子域授權

全球網絡的DNS服務器都是由多級所構成的,每一臺主機通過域名服務找到所要訪問的主機IP地址都是通過一層層DNS服務器找到的。而這樣的結構就決定了,上級域名服務器必須具備找到子域的能力,例如tianxia.com.這個域名,在頂級域com.下就必須要找到tianxia.com.這個子域。所以上級域名服務器就必要在解析庫文件中定義子域。

定義子域的方法,就是在域名解析庫文件中定義一個子域的NS記錄,然後再給這條NS記錄定義一條A記錄即可。例如在tianxia.com.這個域名下定義一個zg.tianxia.com.這個子域。

exp:

            $TTL 1D            
            $ORIGIN tianxia.com.
            @       IN      SOA     @       admin.tianxia.com. (
                            2017101601
                            2H
                            10M
                            1D
                            1W
                    )
                    IN      NS      ns1
                    IN      NS      ns2
            zg      IN      NS      ns1.zg    //子域定義
            zg      IN      NS      ns2.zg    //子域定義
            ns1.zg  IN      A       2.2.2.2    //子域定義
            ns2.zg  IN      A       2.2.2.3    //子域定義
            ns1     IN      A       1.1.1.1
            ns2     IN      A       1.1.1.2
            www     IN      A       1.1.1.3
            web     IN      CNAME   www

當任何主機申請解析zg.tianxia.com.這個域時,當前域名服務器就會返回zg.tianxia.com.域的域名服務器IP地址。


十五、域名服務器轉發定義

正常情況下,當域名服務器無法在本地解析域名時,會向根域名服務器申請叠代查詢。如果希望在本地沒有查詢到,而轉向指定服務器進行查詢時,就必須定義域名服務器的轉發。需要註意的是被轉發的域名服務器必須允許為當前服務器做遞歸。

域名服務器定義轉發規則還分為兩種轉發,第一種為區域轉發,第二種為全局轉發。

◆區域轉發

區域轉發實際上就是轉發對某特定區域的解析請求,例如在子域zg.tianxia.com.這個子域下配置對tianxia.com.域名的解析全部轉發到tianxia.com.域名服務器中

exp:

        zone "tianxia.com."    IN    {        
            type    forward;
            forward    { first };
            forwarders    { 192.168.5.130; };
        };

配種中,type類型必須定義為forward;forward類型可定義為first或者only,first表示首先轉發,當轉發的服務器不響應時,自行去叠代查詢,only表示僅轉發;forwarders類型定義需要轉發到的域名服務器IP地址。

◆全局轉發

全局轉發主要針對除本地沒有通過zone定義的區域查詢請求,全部轉發給某服務器。實際上這是對域名服務器的一個全局定義,所以應該配置在/etc/named.conf中。格式為

exp:

        options {        
                ...
                forward  {first|only};
                forwarders  { SERVER_IP; };
                ...    
        }


十六、訪問控制列表配置

bind軟件中為了進行相關的安全配置,設置了訪問控制列表,由acl關鍵字來定義。acl訪問控制列表實際上就是將一個或多個地址歸並一個命名的集合,隨後通過此名稱即可對此集合內的所有主機實現統一調用。訪問控制列表的定義規則:

acl acl_name{

ip1;

net/prelen;

...

exp:

        acl    tianxia_net{        
                192.168.5.121;
                1.2.3.0/24;
        };

在bind軟件中默認有四個內置的訪問控制列表,分別是none、any、local、localnet,分別表示沒有主機、所有主機、本機、本機所在的網絡。

常用的使用訪問控制列表的指令有:

allow-query {};定義用於查詢的主機

allow-transfer {};定義允許向哪些主機做區域傳送

allow-recursion {};定義允許哪些主機向當前DNS服務器發起遞歸查詢請求

allow-update {};定義允許動態更新區域數據庫文件中的內容

本文出自 “海之濱的博客” 博客,請務必保留此出處http://haizhibin.blog.51cto.com/13403510/1977575

DNS解析與Bind的使用(7)——子域授權、轉發及訪問控制列表配置