高可用性DNSサーバの構築:主従DNSサーバ

5457 ワード

******************************************
一、主従DNS実験環境
二、DNS主従同期原理
三、主DNSサーバーの構築
四、DNSサーバーから構築する
五、主従同期テスト
******************************************
一、主従DNS実験環境
システム環境:Centos 6.4 X 86_64
Master  IP:172.16.10.1    
HOSTNAME: master.dns.com
Slav     IP:172.16.10.2
HOSTNAME: slav.dns.com
パッケージ:
   bind-9.8.2-0.17.rc1.el6.x86_64 dnsサービスパッケージの提供(必須)
   bind-utils-9.8.2-0.17.rc1.el6.x86_64キット
二、DNS主従同期原理図
三、主DNSサーバーの構築
  • パッケージのインストール(rpmパッケージ)
  • [root@master ~]# yum install bind  bind-utils  -y
  • Bindディレクトリ構造
  • プライマリプロファイル解釈(/etc/named.conf)
  • 領域プロファイル解釈(/etc/named.rfc 1912.zones)
  • 注意fileで指定したファイルは、/var/named/で作成したDNS解析レコードファイルです.
  • DNS解析記録ファイル(生成ファイルの作成)
  • 順方向プロファイルの編集(dns.com.zone)この名前は、地域プロファイル(/etc/named.rfc 1912.zones)でFileで指定した名前に対応する必要があります.
    [root@localhost named]# vim dns.com.zone
    $TTL 600
    @     IN  SOA    master.dns.com. admin.126.com (
                                   20130816  # 
                                    2H      # 
                                    10M     # 
                                    7D      # 
                                    6H      # TTL
    )
            IN    NS      master
            IN      NS      slv
            IN   MX  10    mail
    master  IN   A        172.16.10.1
    www     IN   A      172.16.10.3
    slv     IN   A      172.16.10.2
    ftp     IN   A      172.16.0.5

    コメント:
  • @参照ドメイン名ここではdnsを表す.com.
  • SOA指定メインDNSサーバ
  • NS指定DNSサービス
  • 逆dnsの表示
    [root@localhost named]# vim 172.16.10.zone
    $TTL 600
    @     IN  SOA    master.dns.com. admin.126.com (
                                    0
                                    2H
                                    10M
                                    7D
                                    6H
    )
            IN    NS      master.dns.com.   # dns 
    1        IN   PTR     master.dns.com.
    3        IN   PTR     www.dns.com.
    ~

    コメント:
  • @は10.16.172を表す.in-addr.arpa.

  • 権限の変更(ここでは注意してください..そうでないと後期に影響します)
    [root@localhost named]# ll
    total 36
    -rw-r-----. 1 root  root   262 Aug 11 02:25 172.16.10.zone
    drwxrwx---. 2 named named 4096 Aug 10 11:19 data
    -rw-r--r--. 1 root  root   263 Aug 10 16:50 dns.com.zone
    drwxrwx---. 2 named named 4096 Aug 11 02:26 dynamic
    -rw-r-----. 1 root  named 1892 Feb 18  2008 named.ca
    -rw-r-----. 1 root  named  152 Dec 15  2009 named.empty
    -rw-r-----. 1 root  named  152 Jun 21  2007 named.localhost
    -rw-r-----. 1 root  named  168 Dec 15  2009 named.loopback
    drwxrwx---. 2 named named 4096 Feb 22 11:10 slaves
    [root@localhost named]# chgrp named dns.com.zone
    [root@localhost named]# chgrp named 172.16.10.zone
    [root@localhost named]# chmod 640 dns.com.zone
    [root@localhost named]# ll
    total 36
    -rw-r-----. 1 root  named  262 Aug 11 02:25 172.16.10.zone
    drwxrwx---. 2 named named 4096 Aug 10 11:19 data
    -rw-r-----. 1 root  named  263 Aug 10 16:50 dns.com.zone
    drwxrwx---. 2 named named 4096 Aug 11 02:26 dynamic
    -rw-r-----. 1 root  named 1892 Feb 18  2008 named.ca
    -rw-r-----. 1 root  named  152 Dec 15  2009 named.empty
    -rw-r-----. 1 root  named  152 Jun 21  2007 named.localhost
    -rw-r-----. 1 root  named  168 Dec 15  2009 named.loopback
    drwxrwx---. 2 named named 4096 Feb 22 11:10 slaves

    DNSサーバを起動し、53ポートを確認し、サービスが正常かどうかを確認します.
    [root@localhost named]# service named  start
    Starting named:                                            [  OK  ]
    [root@localhost named]# netstat -anpt | grep 53
    tcp        0      0 172.16.10.1:53              0.0.0.0:*                   LISTEN      1399/named  
    tcp        0      0 127.0.0.1:53                0.0.0.0:*                   LISTEN      1399/named  
    tcp        0      0 127.0.0.1:953               0.0.0.0:*                   LISTEN      1399/named  
    tcp        0      0 127.0.0.1:953               127.0.0.1:33951             TIME_WAIT   -           
    tcp        0      0 127.0.0.1:953               127.0.0.1:56486             TIME_WAIT   -           
    tcp        0      0 ::1:953                     :::*                        LISTEN      1399/named  
    [root@localhost named]#

    サービスは正常に開始されました
    nslookupを使用してdns解析が正常かどうかをテストします
    このメインDNSの構築が完了しました.
    四、DNSサーバーから構築する
  • パッケージのインストール(rpmパッケージ)
  • [root@master ~]# yum install bind  bind-utils  -y
  • プロファイルの変更(使用//注釈3行)
  • vim/etc/named.conf
    //      listen-on port 53 { 127.0.0.1; };
    //      listen-on-v6 port 53 { ::1; };
    //          allow-query     { localhost; };

    vim/etc/named.rfc1912.zones
    zone "dns.com" IN {
            type slave;
            file "slaves/dns.com.zone";
            masters { 172.16.10.1; };
    };
    zone "10.16.172.in-addr-arpa" IN {
            type slave;
            file "slaves/172.16.10.zone";
            masters { 172.16.10.1; };
    };

    コメント:
  • type:指定タイプ:slave(スレーブサーバ)master(プライマリサーバ)hite(ルートサーバ)
  • file:解析記録ファイル格納パス
  • を指定する
  • maters:プライマリdnsを指定するipアドレス
  • メインスレーブdnsサーバ
  • を再ロード
    rndc reload
    dnsを自動的に生成する.com.zone
    [root@slv ~]# ll /var/named/slaves/
    total 4
    -rw-r--r--. 1 named named 480 Aug 11 16:41 dns.com.zone

    DNSサーバからの構築が完了しました.とてもeasyを感じますか....
    注意:サーバからの最初の同期は実現できますが、後期のプライマリdnsデータファイルが変化した場合は必ずシーケンス番号+1を覚えておき、NSレコードを追加するにはDNSサーバから、Aレコードを追加するにはDNSから
    五、主従同期テスト
    OK !!!!テスト完了.....
    転載先:https://blog.51cto.com/xiaodong88/1272625