bind簡單配置之子域、主從、視圖

[bind簡單配置之子域、主從、視圖]

標簽:bind簡單配置、子域、主從、視圖

[邏輯拓撲結構圖]

繪圖2.jpg

ns.mylinux.com主機上面有兩種網卡用來模擬兩個不通的網段。


[子域配置]

        域名內部還可以繼續劃分子域,進行分片管理。下面是正向子域授權的配置:
           1. 1:在父域的區域解析庫中添加“膠水記錄”

$TTL 7200
@       IN      SOA     ns         admin        (
                        2015101610
                        1800
                        300
                        1W
                        1D
)
        IN      NS              ns
        IN      MX      10      mail

ns      IN      A       10.10.10.3
mail    IN      A       10.10.10.4
www     IN      A       10.10.10.5
ftp     IN      A       10.10.10.6

cs      IN      NS      ns.cs
ns.cs   IN      A       172.16.1.80

    1.2    搭建子域DNS服務器,添加資源記錄。關于搭建bind服務器的配置請參照bind簡單配置文章

#子域資源記錄信息
[root@localhost ~]# vim /var/named/cs.mylinux.zone 

$TTL 7200
@               IN      SOA     ns      admin   (
                                2015101800
                                1800
                                300
                                1W
                                2H)
                IN      NS      ns
ns              IN      A       172.16.1.80
www             IN      A       172.16.1.23

1.3 轉發設置

##因子域DNS服務器無法上網需要將子域DNS的上請求其他域的信息轉發給另一臺可以再互聯網上通信DNS服務器來處理。

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;
        forward only;                    #主配置文件配置轉發,
        #forward only|fist   only標示只轉發 fist標示轉發后沒有結果自己在去找根問一遍
        forwarders { 172.16.1.1; };     #制定轉發給那臺服務器
}

##因為子域并不知道父域,需要給父域配置一個轉發域。
zone "mylinux.com" IN {
        type forward;                             #類型
        forwarders { 172.16.1.60; 10.10.10.3;  }; #制定父域DNS地址,父域有多個地址時用幾個寫幾個即可。
};

        1.3 測試

[root@localhost named]# dig -t A  www.cs.mylinux.com  @10.10.10.3     #不重要的顯示信息我刪除了
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1  # flags: qr rd ra   qr非權威解答
;www.cs.mylinux.com.        IN    A

;; ANSWER SECTION:
www.cs.mylinux.com.    7200    IN    A    172.16.1.23    #解析結果

;; AUTHORITY SECTION:
cs.mylinux.com.        6327    IN    NS    ns.cs.mylinux.com. #DNS響應服務

;; ADDITIONAL SECTION:
ns.cs.mylinux.com.    6327    IN    A    172.16.1.80

[root@localhost ~]# dig @172.16.1.80 -t A www.mylinux.com 

www.mylinux.com.    1459    IN    A    10.10.10.5

;; AUTHORITY SECTION:
mylinux.com.        1459    IN    NS    ns.mylinux.com.

;; ADDITIONAL SECTION:
ns.mylinux.com.        1459    IN    A    10.10.10.3

[bind主從服務器]

主從服務器注意事項:

1:主從服務器的時間需要同步;

2:從服務器的軟件版本不要低于主服務器;

3:主從服務器之間可以基于IP通信即可,并非一定要一個網段內;

4:對外服務器的所有DNS服務器均需要在域名機構進行注冊;

2.1 主服務器配置

#此項配置前面我們已經做好無需改動
zone "mylinux.com" IN {
        type master;
        file "mylinux.zone";
        allow-update { none; };
};
#主服務器資源解析庫中增加從服務器的NS記錄和A記錄
$TTL 7200
@       IN      SOA     ns         admin        (
                        2015101610
                        1800
                        300
                        1W
                        1D
)
        IN      NS              ns
        IN      MX      10      mail
        IN      NS              ns1  #

ns      IN      A       10.10.10.3
ns1     IN      A       10.10.10.4   #
mail    IN      A       10.10.10.4
www     IN      A       10.10.10.5
ftp     IN      A       10.10.10.6

cs      IN      NS      ns.cs
ns.cs   IN      A       172.16.1.80
~

        2.2 叢服務器配置

        主配置文件配置的方式一樣這里不做敘述。

#定義域配置
zone "mylinux.com" IN {
        type slave;                    #tyoe類型slave
        file "slaves/mylinux.zone";    
        #叢服務器的文件時從主服務器同步而來,存放資源解析文件的文件夾權限模型需要是: 770 named named
        masters { 10.10.10.3; };       #拉取配置文件的服務器地址,可以是主服務器也可以是從服務器??梢詫憥讉€備用。
};
#啟動前我們先同步下時間,我直接把10.10.10.3服務器做成了NTP服務端,讓叢服務器來同步主服務器的時間。
[root@localhost ~]# ntpdate 10.10.10.3
18 Oct 17:38:52 ntpdate[3196]: step time server 10.10.10.3 offset 26603.138672 sec
[root@localhost ~]# named-checkconf         #檢查下配置文件
[root@localhost ~]# systemctl start named   #啟動named服務
[root@localhost ~]# tail /var/log/messages  #查看下日志信息
Oct 18 02:43:08 localhost systemd: Starting Host and Network Name Lookups.
Oct 18 02:43:08 localhost systemd: Reached target Host and Network Name Lookups.
Oct 18 02:43:08 localhost named[3218]: zone mylinux.com/IN: Transfer started.
Oct 18 02:43:08 localhost named[3218]: transfer of 'mylinux.com/IN' from 10.10.10.3#53: connected using 10.10.10.4#52841 #
Oct 18 02:43:08 localhost named[3218]: zone mylinux.com/IN: transferred serial 2015101610 #
Oct 18 02:43:08 localhost named[3218]: transfer of 'mylinux.com/IN' from 10.10.10.3#53: Transfer completed: 1 messages, 10 records, 253 bytes, 0.001 secs (253000 bytes/sec) #
Oct 18 02:43:10 localhost chronyd[729]: Can't synchronise: no majority
Oct 18 02:44:32 localhost systemd: Starting Generate rndc key for BIND (DNS)...
Oct 18 02:44:32 localhost systemd: Started Generate rndc key for BIND (DNS).
Oct 18 02:44:32 localhost systemd: Started Berkeley Internet Name Domain (DNS). 

[root@localhost ~]# dig -t AXFR mylinux.com @10.10.10.4     #使用dig 做一下區域傳輸測試

; <<>> DiG 9.9.4-RedHat-9.9.4-18.el7_1.5 <<>> -t AXFR mylinux.com @10.10.10.4
;; global options: +cmd
mylinux.com.        7200    IN    SOA    ns.mylinux.com. admin.mylinux.com. 2015101610 1800 300 604800 86400
mylinux.com.        7200    IN    MX    10 mail.mylinux.com.
mylinux.com.        7200    IN    NS    ns.mylinux.com.
cs.mylinux.com.        7200    IN    NS    ns.cs.mylinux.com.
ns.cs.mylinux.com.    7200    IN    A    172.16.1.80
ftp.mylinux.com.    7200    IN    A    10.10.10.6
mail.mylinux.com.    7200    IN    A    10.10.10.4
ns.mylinux.com.        7200    IN    A    10.10.10.3
www.mylinux.com.    7200    IN    A    10.10.10.5
mylinux.com.        7200    IN    SOA    ns.mylinux.com. admin.mylinux.com. 2015101610 1800 300 604800 86400
;; Query time: 1 msec
;; SERVER: 10.10.10.4#53(10.10.10.4)
;; WHEN: Sun Oct 18 17:47:17 CST 2015
;; XFR size: 10 records (messages 1, bytes 253)

[bind視圖配置]

        視圖功能實現的最直接的功能就是根據原地址的不同返回不同的解析結果,以提高客戶機的訪問速度和自身業務服務器的負載均衡。

  啟用視圖功能后所有的zone都必須寫在視圖內

  view VIEW-NAME    {

                match-chients {  acl;ipaddr;network; } ;

   zone     "ZONE-NAME"  IN  {

                type    hint|master|slave;

                file    "FILE-NAME";

                allow-transfer  { acl;ipaddr;network; } ;

                allow-update    { acl;ipaddr;network; } ;

             };

    }:                 

view IN-NET     {                                ##視圖的順序很重要匹配規則是從上往下進行匹配
        match-clients { 10.10.10.0/24; };

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

zone "localhost.localdomain" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};

zone "localhost" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};

zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};

zone "1.0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};

zone "0.in-addr.arpa" IN {
        type master;
        file "named.empty";
        allow-update { none; };
};

zone "mylinux.com" IN {
        type master;
        file "mylinux.zone";
        allow-update { none; };
};

zone "10.10.10.in-addr.arpa" IN {
        type master;
        file "10.10.10.zone";
        allow-update { none; };
};

        };

view EX-NET     {                    #
match-clients { any; };              #視圖的順序很重要匹配規則是從上往下進行匹配,匹配到客戶端為any后是不會繼續向后匹配的,  

zone "mylinux.com" IN {
        type master;
        file "mylinux-ex.zone";
};
        };
        
#172.16.1.80測試
[root@ns ~]# dig -t AXFR mylinux.com @10.10.10.3

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t AXFR mylinux.com @10.10.10.3
;; global options: +cmd
mylinux.com.        7200    IN    SOA    ns.mylinux.com. admin.mylinux.com. 2015101610 1800 300 604800 86400
mylinux.com.        7200    IN    NS    ns.mylinux.com.
mylinux.com.        7200    IN    NS    ns1.mylinux.com.
mylinux.com.        7200    IN    MX    10 mail.mylinux.com.
cs.mylinux.com.        7200    IN    NS    ns.cs.mylinux.com.
ns.cs.mylinux.com.    7200    IN    A    61.146.37.80
ftp.mylinux.com.    7200    IN    A    211.133.100.7
mail.mylinux.com.    7200    IN    A    211.133.100.5
ns.mylinux.com.        7200    IN    A    211.133.100.3
ns1.mylinux.com.    7200    IN    A    211.133.100.4
www.mylinux.com.    7200    IN    A    211.133.100.6
mylinux.com.        7200    IN    SOA    ns.mylinux.com. admin.mylinux.com. 2015101610 1800 300 604800 86400
;; Query time: 7 msec
;; SERVER: 10.10.10.3#53(10.10.10.3)
;; WHEN: Mon Oct 19 05:08:31 2015
;; XFR size: 12 records (messages 1, bytes 287)

#10.10.10.4測試
[root@localhost ~]# dig -t AXFR mylinux.com @10.10.10.3

; <<>> DiG 9.9.4-RedHat-9.9.4-18.el7_1.5 <<>> -t AXFR mylinux.com @10.10.10.3
;; global options: +cmd
mylinux.com.        7200    IN    SOA    ns.mylinux.com. admin.mylinux.com. 2015101610 1800 300 604800 86400
mylinux.com.        7200    IN    NS    ns.mylinux.com.
mylinux.com.        7200    IN    NS    ns1.mylinux.com.
mylinux.com.        7200    IN    MX    10 mail.mylinux.com.
cs.mylinux.com.        7200    IN    NS    ns.cs.mylinux.com.
ns.cs.mylinux.com.    7200    IN    A    172.16.1.80
ftp.mylinux.com.    7200    IN    A    10.10.10.6
mail.mylinux.com.    7200    IN    A    10.10.10.4
ns.mylinux.com.        7200    IN    A    10.10.10.3
ns1.mylinux.com.    7200    IN    A    10.10.10.4
www.mylinux.com.    7200    IN    A    10.10.10.5
mylinux.com.        7200    IN    SOA    ns.mylinux.com. admin.mylinux.com. 2015101610 1800 300 604800 86400
;; Query time: 1 msec
;; SERVER: 10.10.10.3#53(10.10.10.3)
;; WHEN: Sun Oct 18 21:13:04 CST 2015
;; XFR size: 12 records (messages 1, bytes 287)

        就先到這吧;視圖的主從復制留到下次寫吧。

原創文章,作者:東郭先生,如若轉載,請注明出處:http://www.www58058.com/3304

(0)
東郭先生東郭先生
上一篇 2015-10-22
下一篇 2015-10-22

相關推薦

  • 第十八周作業

    1.LNMP架構添加Memcached支持,并驗證其緩存結果 Memcache是一個高性能的分布式的內存對象緩存系統,通過在內存里維護一個統一的巨大的hash表,它能夠用來存儲各種格式的數據,包括圖像、視頻、文件以及數據庫檢索的結果等。簡單的說就是將數據調用到內存中,然后從內存中讀取,從而大大提高讀取速度。 Memcached是以守護程序(監聽)方式運行于一…

    2017-07-07
  • Ansible中文權威

    福利貼 運維神器 Ansible 本土化在際,除了每日分享,定期更新外,還有大蝦不定期解惑,更多福利可關注  http://www.www58058.com/doc/ansible/  或 掃描二維碼入( 372011984 )群關注.

    Linux干貨 2015-08-13
  • linux流程控制if,for,case,while

     Shell編程中循環命令用于特定條件下決定某些語句重復執行的控制方式,有三種常用的循環語句:for、while和until。while循環和for循環屬于“當型循環”,而until屬于“直到型循環”。循環控制符:break和continue控制流程轉向。 選擇執行:           …

    Linux干貨 2017-03-25
  • N26第六周博客作業

    請詳細總結vim編輯器的使用并完成以下練習題 1、               復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#…

    Linux干貨 2017-03-13
  • Python高階函數和裝飾器

    高階函數 First Class Object 函數在Python中是一等公民 函數也是對象,可調用(callable)的對象 函數可以作為普通變量、參數、返回值等等 高階函數 數學概念y=g(f(x)) 在Python中,高階函數應該滿足下列至少一個條件 接受一個或者多個函數作為參數 輸出一個函數 計數器 def counter(base): def in…

    Linux干貨 2017-10-23
  • Linux發行版的基礎目錄名稱命名法則及功用規定

    [root@localhost /]# tree -L 1. <—-> 為 / 符號,所有文件的根目錄;├── bin -> usr/bin <—-> 所有用戶可用的基本命令程序文件;├── boot <—-> 引導加載器必須用到的各靜態文件:kernel,initramfs(in…

    2018-02-28

評論列表(1條)

  • stanley
    stanley 2015-10-22 09:13

    又見東郭先生作品

欧美性久久久久