Linux DNS服務器主從複製及區域傳送

什麼是DNS主從複製?

    簡單說一下,所謂DNS主從複製,就是將主DNS服務器的解析庫複製傳送至從DNS服務器,進而從服務器就可以進行正向、反向解析了。


這裏提一下DNS服務器類型有以下幾種:

    主DNS服務器

    輔DNS服務器

    緩存服務器(默認)

    轉發器


需要注意的是:

    1、做主從的時候時間同步非常重要,必須保持時間的一致性;

    2、DNS(bind)的版本問題,最好使用同一版本,或者從DNS版本比主DNS版本高。


什麼是區域傳送?

區域傳送有兩種類型:

    完全區域傳送:axfr

    增量區域傳送:ixfr


    輔助域名服務器每隔一定時間向主域名服務器發送查詢更新,以保證數據一致性,這個過程就叫做區域傳送。當一個新的DNS服務器添加到區域中並配置爲輔DNS服務器時,它則會執行完全區域傳送,從主DNS服務器上獲取一份完整的資源記錄副本;同時,爲了保證數據同步,主域名服務器有更新時也會及時通知輔助域名服務器從而進行更新(增量區域傳送)。


區域的類型:

    主區域:master

    從區域:slave

    提示區域:hint

    轉發區域:forward


注:配置只允許某從服務器進行區域傳送,其它任何主機都不可以傳送,可在區域內配置,下面會有示例:

    allow-transfer { IP | none };


# 相關配置示例:

系統約定:

    主DNS:192.168.101.168

    輔DNS:192.168.101.169


# 注:DNS服務器搭建配置請看上一篇文章。


1、主DNS服務器修改相關配置

vim /etc/named.conf

zone "redhat.com" IN {

        type master;

        file "redhat.com.zone";

        allow-transfer { 192.168.101.169; };        # 增加允許區域傳送的從DNS服務器地址

};


zone "101.168.192.in-addr.arpa" IN {

        type master;

        file "192.168.101.zone";

        allow-transfer { 192.168.101.169; };        # 同上

};


2、修改主DNS正向、反向區域配置文件

vim /var/named/redhat.com.zone

$TTL 86400

@       IN      SOA     ns1.redhat.com. admin.redhat.com. (

                                        2015010101      ; serial

                                        1H              ; refresh

                                        5M              ; retry

                                        1W              ; expire

                                        3H )            ; minimum

        IN      NS      ns1

        IN      NS      ns2                        # 增加從服務器

        IN      MX 10   mail

ns1     IN      A       192.168.101.168

ns2     IN      A       192.168.101.169    # 增加從服務器正向解析

mail    IN      A       192.168.101.10

www     IN      A       192.168.101.11

www     IN      A       192.168.101.12


vim /var/named/192.168.101.zone

$TTL 86400

@       IN      SOA     ns1.redhat.com. admin.redhat.com. (

                                        2015010101      ; serial

                                        1H              ; refresh

                                        5M              ; retry

                                        1W              ; expire

                                        3H )            ; minimum

        IN      NS      ns1.redhat.com.

        IN      NS      ns2.redhat.com.        # 增加從服務器

168     IN      PTR     ns1.redhat.com.

169     IN      PTR     ns2.redhat.com.    # 增加從服務器反向解析

10      IN      PTR     mail.redhat.com.

11      IN      PTR     www.redhat.com.

12      IN      PTR     www.redhat.com.


3、重新加載named服務

service named reload


# 至此,主DNS服務器完全區域傳送配置完成。


4、從DNS服務器安裝配置bind

# 配置IP:192.168.101.169

# 配置DNS:192.168.101.169

yum install bind-libs bind-utils bind

scp 192.168.101.168:/etc/named.conf /etc/


vim /etc/named.conf

zone "redhat.com" IN {

        type slave;                                        # 此處修改爲slave

        file "slaves/redhat.com.zone";        # 修改文件保存路徑

        masters { 192.168.101.168; };            # 添加主DNS服務器地址

        allow-transfer { none; };                    # 修改爲none

};


zone "101.168.192.in-addr.arpa" IN {

        type slave;

        file "slaves/192.168.101.zone";

        masters { 192.168.101.168; };

        allow-transfer { none };

};


5、啓動並在主DNS服務器查看相關日誌

service named start

# 成功則/var/named/slaves/目錄下成功傳送所有主服務器區域配置文件

# 以下是主DNS服務器日誌信息

tail /var/log/messages

Jan 1 01:32:41 node named[2539]: client 192.168.101.169#55412: transfer of '101.168.192.in-addr.arpa/IN': AXFR started

Jan 1 01:32:41 node named[2539]: client 192.168.101.169#55412: transfer of '101.168.192.in-addr.arpa/IN': AXFR ended

Jan 1 01:32:41 node named[2539]: client 192.168.101.169#40342: transfer of 'redhat.com/IN': AXFR started

Jan 1 01:32:41 node named[2539]: client 192.168.101.169#40342: transfer of 'redhat.com/IN': AXFR ended


# 至此,從DNS服務器完全區域傳送完成。


6、增量區域傳送

# 以下操作均在主DNS服務器進行

vim /var/named/redhat.com.zone

$TTL 86400

@       IN      SOA     ns1.redhat.com. admin.redhat.com. (

                                        2015010102      ; serial            # 修改序列號+1

                                        1H              ; refresh

                                        5M              ; retry

                                        1W              ; expire

                                        3H )            ; minimum

        IN      NS      ns1

        IN      NS      ns2

        IN      MX 10   mail

ns1     IN      A       192.168.101.168

ns2     IN      A       192.168.101.169

mail    IN      A       192.168.101.10

www     IN      A       192.168.101.11

www     IN      A       192.168.101.12

test    IN      A       192.168.101.13                        # 添加一條正向解析記錄


vim /var/named/192.168.101.zone

$TTL 86400

@       IN      SOA     ns1.redhat.com. admin.redhat.com. (

                                        2015010102      ; serial            # 修改序列號+1

                                        1H              ; refresh

                                        5M              ; retry

                                        1W              ; expire

                                        3H )            ; minimum

        IN      NS      ns1.redhat.com.

        IN      NS      ns2.redhat.com.

168     IN      PTR     ns1.redhat.com.

169     IN      PTR     ns2.redhat.com.

10      IN      PTR     mail.redhat.com.

11      IN      PTR     www.redhat.com.

12      IN      PTR     www.redhat.com.

13      IN      PTR     test.redhat.com.                        # 添加一條反向解析記錄


7、重新加載named配置

service named reload

# 可在從DNS服務器/var/named/slaves/目錄下查看對應文件是否傳送正確

# 主DNS服務器查看日誌

tail /var/log/messages

Jan 1 01:37:27 node named[2539]: zone 101.168.192.in-addr.arpa/IN: loaded serial 2015010102

Jan 1 01:37:27 node named[2539]: zone 101.168.192.in-addr.arpa/IN: sending notifies (serial 2015010102)

Jan 1 01:37:27 node named[2539]: zone redhat.com/IN: loaded serial 2015010102

Jan 1 01:37:27 node named[2539]: zone redhat.com/IN: sending notifies (serial 2015010102)

Jan 1 01:37:27 node named[2539]: client 192.168.101.169#45819: transfer of '101.168.192.in-addr.arpa/IN': AXFR-style IXFR started

Jan 1 01:37:27 node named[2539]: client 192.168.101.169#45819: transfer of '101.168.192.in-addr.arpa/IN': AXFR-style IXFR ended

Jan 1 01:37:28 node named[2539]: client 192.168.101.169#41348: transfer of 'redhat.com/IN': AXFR-style IXFR started

Jan 1 01:37:28 node named[2539]: client 192.168.101.169#41348: transfer of 'redhat.com/IN': AXFR-style IXFR ended


# 至此,DNS主從複製及區域傳送配置完成。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章