2022年8月、ホームページを全面リニューアルしました! 情報を分かりやすくお伝えできるサイト作りを目指してまいります。

一つのドメインにメールサーバを複数台置く!

企業などでメールサーバの負荷が増え、もう一台増やしたい。あるいは、メールサーバのリカバリーとしてもう一台予備機を用意して運用したい、と言うような思いは企業の鯖管理者なら誰でも一度は思うのではないだろうか。その時に一番気になるのが、DNSの設定である。ここでは、メールサーバを複数台設置した時のBINDの設定方法を伝授したい。

マシン環境)
マシン:Dellサーバ PowerEdge SC430
OS:CentOS4.4 LinuxKernel2.6.9-42.0.10
DNSサーバ:bind-9.2.4-24.EL4

ドメイン:xxxxxxxxxx.jp
DNSサーバホストネーム:ns.xxxxxxxxxx.jp

注:本説明以外のBINDの詳しい設定方法は、 ここ を参照のこと。


1.一つのドメイン内にリカバリメール鯖を設置する場合のBINDの設定方法
既存のメール鯖:mail.xxxxxxxxxx.jp(61.xxx.xxx.83)
リカバリメール鯖:mail2.xxxxxxxxxx.jp(61.xxx.xxx.87)

この設定では、メール鯖 mail.xxxxxxxxxx.jpが何らかの障害でダウンしたときに、自動的にmail2.xxxxxxxxxx.jpにメール鯖の運用が切り替わるように設定したい。

1)BIND正引き情報

[root@ns named]# more xxxxxxxxxx.jp.zone
$ORIGIN xxxxxxxxxx.jp.
$TTL 86400
@ IN SOA ns.xxxxxxxxxx.jp. root.xxxxxxxxxx.jp. (
                               2007042401 ; serial
                               10800 ; refresh
                               3600 ; retry
                               604800 ; expire
                               86400 ; default_ttl
                               )

            IN       NS                         ns
            IN       NS                         sub2.xxxxxx.com.

            IN       MX          10             mail
            IN      MX         20           mail2

            ns       IN           A             61.xxx.xxx.83
            mail      IN           A             61.xxx.xxx.83
            web2     IN           A             61.xxx.xxx.86
            mail2    IN         A            61.xxx.xxx.87

            pop      IN           CNAME         mail
            smtp     IN           CNAME         mail
            www     IN           CNAME         web2

ここで、MXの後の 「10」とか「20」の数字はメールサーバのプライオリティを示しており、ホストネーム mailのマシンが接続できなかったときは、自動的にホストネーム mail2のマシンへアクセスを試みることになる。

2)BIND逆引き情報

[root@ns named]# more named.rev
$ORIGIN xxx.xxx.61.in-addr.arpa.
$TTL 86400
@ IN SOA ns.xxxxxxxxxx.jp. root.xxxxxxxxxx.jp. (
                               2007042401 ; serial
                               28800 ; refresh
                               14400 ; retry
                               3600000 ; expire
                               86400 ; default_ttl
                               )
;
; Name Server
;
            IN       NS          ns.xxxxxxxxxx.jp.
            IN       NS          sub2.xxxxxx.com.

;
; NetMask
;
; IN A 255.255.255.240

; Server Group

83          IN       PTR         ns.xxxxxxxxxx.jp.
86          IN       PTR         web2.xxxxxxxxxx.jp.
87         IN      PTR       mail2.xxxxxxxxxx.jp.


2.サブドメインを作り二台目のメール鯖を設置する場合のBINDの設定方法
既存のメール鯖:mail.xxxxxxxxxx.jp(61.xxx.xxx.83)
サブドメインのメール鯖:mail2.sub.xxxxxxxxxx.jp(61.xxx.xxx.87)

ここでは、サブドメインを作り全く違う二台目のメール鯖を作る。

1)BIND正引き情報

[root@ns named]# more xxxxxxxxxx.jp.zone
$ORIGIN xxxxxxxxxx.jp.
$TTL 86400
@ IN SOA ns.xxxxxxxxxx.jp. root.xxxxxxxxxx.jp. (
                               2007042401 ; serial
                               10800 ; refresh
                               3600 ; retry
                               604800 ; expire
                               86400 ; default_ttl
                               )

            IN       NS                         ns
            IN       NS                         sub2.xxxxxx.com.

            IN       MX           10             mail

            ns       IN           A              61.xxx.xxx.83
            mail      IN           A              61.xxx.xxx.83
            web2     IN           A              61.xxx.xxx.86

            pop      IN           CNAME          mail
            smtp     IN           CNAME          mail
            www     IN           CNAME          web2

            sub     IN         MX            10     mail2.sub.xxxxxxxxxx.jp.
            mail2.sub IN         A                    61.xxx.xxx.87

最後の方に、サブドメインの記述と二台目のメール鯖のAレコードを追加。

2)BIND逆引き情報

[root@ns named]# more named.rev
$ORIGIN xxx.xxx.61.in-addr.arpa.
$TTL 86400
@ IN SOA ns.xxxxxxxxxx.jp. root.xxxxxxxxxx.jp. (
                               2007042401 ; serial
                               28800 ; refresh
                               14400 ; retry
                               3600000 ; expire
                               86400 ; default_ttl
                               )
;
; Name Server
;
            IN       NS          ns.xxxxxxxxxx.jp.
            IN       NS          sub2.xxxxxx.com.

;
; NetMask
;
; IN A 255.255.255.240

; Server Group

83          IN          PTR      ns.xxxxxxxxxx.jp.
86          IN          PTR      web2.xxxxxxxxxx.jp.

87        IN         PTR     mail2.sub.xxxxxxxxxx.jp.


3.共通のnamed.conf

参考までに、以下にnamed.confを示す。

[root@ns etc]# more named.conf
// Default named.conf generated by install of bind-9.2.4-2

logging {
category lame-servers { null; };
};

options {
directory “/var/named”;
dump-file “/var/named/data/cache_dump.db”;
statistics-file “/var/named/data/named_stats.txt”;
};

zone “.” {
type hint;
file “named.ca”;
};

zone “xxxxxxxxxx.jp”{
type master;
file “xxxxxxxxxx.jp.zone”;
};

zone “0.0.127.in-addr.arpa”{
type master;
file “named.local”;
};

zone “xxx.xxx.61.in-addr.arpa”{
type master;
file “named.rev”;
};

include “/etc/rndc.conf”;


4.BINDの起動

起動が旨くいけば、以下のようなlogが表示される。
Apr 24 08:57:30 ns named[9308]: starting BIND 9.2.4 -u named -t /var/named/chroot
Apr 24 08:57:30 ns named[9308]: using 2 CPUs
Apr 24 08:57:30 ns named[9308]: loading configuration from ‘/etc/named.conf’
Apr 24 08:57:30 ns named[9308]: listening on IPv4 interface lo, 127.0.0.1#53
Apr 24 08:57:30 ns named[9308]: listening on IPv4 interface eth0, 61.xxx.xxx.83#
53
Apr 24 08:57:30 ns named[9308]: command channel listening on 127.0.0.1#953
Apr 24 08:57:30 ns named[9308]: zone 0.0.127.in-addr.arpa/IN: loaded serial 2006060501
Apr 24 08:57:30 ns named[9308]: zone xxx.xxx.61.in-addr.arpa/IN: loaded serial 2007042401
Apr 24 08:57:30 ns named[9308]: zone xxxxxxxxxx.jp/IN: loaded serial 2007042401
Apr 24 08:57:30 ns named[9308]: zone xxxxxxxxxx.jp/IN: sending notifies (serial 2007042401)
Apr 24 08:57:30 ns named[9308]: running
Apr 24 08:57:30 ns named[9308]: zone xxx.xxx.61.in-addr.arpa/IN: sending notifies (serial 2007042401)
Apr 24 08:57:30 ns named: named startup succeeded
Apr 24 08:57:30 ns named[9308]: client 203.xxx.xxx.180#1049: transfer of ‘xxxxxxxxxx.jp/IN’: AXFR-style IXFR started

以上

コメント