なぜDNSにMXレコードがあるのか

この話は DNS の設定もメールサービスの設定もしたことがあるが,その関連について考えたことが無かった(数少ない)人にはいい頭の体操になるのではないかと思います.


そもそも DNS の設定メールサービスだけ MX レコードとして特別に指定しなければならないのはなぜか.
というネタが研究室の忘年会で議論になった(というか僕が出した).


つまり,Webサービスftp などの設定はしないのになぜメールサービスだけという問題.


行きついた解答はメールアドレスにドメイン名しか書かないから.というもの.


これは半分正解だが半分足りないと思う.
なぜなら,"メールサービスだけ"という部分の解答になっていないから.
つまり,それなら普通一つのドメインに一つしかないようなWebサービスだって DNS で設定しても良いはず.


僕が考えたのは "転送があるから".
メールサービスが他のサービスと根本的に違うのは,その非同期性だと思う.
これよって得られる利点は,例えばメールサーバがダウンしているときでも中継前のサーバにスプールしておいて,復旧したら改めて送るということが可能となる.


直接でなく中継されながらメールを届けるとなるとメールアドレスにドメイン名にホスト名を付けるのは冗長となる.
最終転送先のメールサーバのアドレスを知っているのは最後だけで良い.


ということでググってみたら非常に良い解説があった.
http://www.geocities.jp/w_engineer_m/dns.htm

ざっと読んだだけだが,スプールの話もあったけど,これも完全な正解では無さそう.
"MXレコードが必要なワケ" というところを読むと,負荷分散が主な目的らしい.
つまり,ドメイン内にメールサーバをたくさん置いて,MXレコードをたくさん書いておけばそれだけ負荷分散できるよね,ということらしい.
あとプライオリティを与えればセカンダリを立てれるから稼働率が上がるとかそういう話かな.



ということで(マニアックなネタだけど)こういうのは調べずに想像すると頭の体操になるのでなかなか楽しいと思った.