Webサーバーとメールサーバーを分けて運用する

本日はWebサーバー(Webホスティング)とメールサーバー(メールホスティング)を分けて運用する場合のDNS切替作業を行なった。忘れそうなのでメモしておく。

まず上記2つと別にDNSサーバーもあることを忘れてはならない。本来はDNSサーバーはWebサーバーを提供している会社のものを使うはずである(Xserver Business ならns1.xbiz.ne.jpなど)が分けることもできるようである。

今回はIIJのサーバーだったが、さくらサーバーと同じくDNSレコードの編集内容を反映させるにはDNSサーバーはIIJ固定で、DNSレコード側(IIJのサービス名でいうとDNSアウトソースサービス)で別のDNSサーバーに名前解決の権限を委任しないといけなかった(NSレコードを追加する必要があった)。

Webサーバーとメールサーバーを分ける時のDNSレコードの書き方

今回はDNS、Web、メールすべてを1つのサーバーでホスティングしていたものを、Webサーバーだけ別のサーバーに分けて運用するケースだった。

ここではDNSサーバーのIPアドレスを000.000.000.000とする。Webサーバーとして使用したいサーバーのIPアドレスを111.111.111.111とする

本来のDNSレコード

今回はIIJのサーバーだったので後述のDNSレコード設定となったが、Webで色々調べた限り本来は以下のような設定で済むようである(ただし確証なし)。

example.com	28800	IN	NS	dns-a.server-company.jp
example.com	28800	IN	NS	dns-b.server-company.jp
localhost	28800	IN	A	127.0.0.1
@		28800	IN	A	111.111.111.111

mail		28800	IN	A	000.000.000.000
@		28800	IN	MX	メールの初期ドメイン
@		28800	IN	MX	メールの初期ドメイン

example.com@000.000.000.000はどれも同じ値になるはず?なので代替可能であるはず。

Aレコードを新しいWebサーバーに指定するけど、メールだけはDNSサーバーと同じ今のサーバーで使いたいから、mail.example.comは000.000.000.000にAレコードを指定する。

基礎知識としてAレコードはNSレコードがあれば無くていい。

またlocalhostのAレコード127.0.0.1は(localhostのIPアドレスを?)自分自身を割り当てるための記述だそうで、このIPアドレスは常にこれらしくおまじないのようなものであるみたい。

今回のDNSレコード

example.com	28800	IN	NS	dns-a.server-company.jp
example.com	28800	IN	NS	dns-b.server-company.jp
localhost	28800	IN	A	127.0.0.1

www		28800	IN	NS	ns1.xbiz.ne.jp
www		28800	IN	NS	ns2.xbiz.ne.jp
www		28800	IN	NS	ns3.xbiz.ne.jp

mail		28800	IN	A	000.000.000.000
@		28800	IN	MX	メールの初期ドメイン
@		28800	IN	MX	メールの初期ドメイン

基本は上記と同じだが、中断でサブドメインwwwのNSレコードを別のネームサーバーに指定している。これは「www.example.comの名前解決は、ns1.xbiz.ne.jpに委任するよー」という意味らしく、これによりAレコードも今回でいう Xserver Business 側を参照してくれて、無事Webサーバーだけを切り離すことができた。

ホスト、ゾーン、正引きと逆引き、CNAME、@、ワイルドカード、IPアドレス、この辺の意味をちゃんと理解していないとすぐ迷子になる(というか今も理解が曖昧…)。

0