メールサーバに未送信のメールが溜まる
メールサーバは配送するメールを一時的に保管して実際の送信に備える。このとき保管する領域を「メールキュー」という。配送が済んだメールはメールキューから削除されるが、送信先のメールサーバに接続できないなどの理由で配送が完了しないメールはここに残され、一定時間後に再び配送が試行される。
メールサーバソフトウェアにsendmailやPostfixを利用している場合は、mailqコマンドでメールキューに溜まったメールを確認できる。画面1の例では、送信先のメールサーバ“norisvr01.example.com”への接続がタイムアウトしたために、3通のメールがキューに残って再送を待っている。このことからどのような原因が考えられるだろうか。
一時的なサーバダウン
“norisvr01.example.com”以外のメールサーバに送信されるメールが正常に配送されているなら、何らかの理由により“norisvr01.example.com”がダウンしている可能性が高い。通常、メールサーバソフトウェアは配送に失敗してキューに残ったメールを何度か再送信しようとする。その間に送信先のメールサーバが復活すればメールは無事に送信される。
サーバに設定された期間を過ぎても配送できなければ、送信者にエラーメールが返送される。ほかのネットワークから送信したメールにもエラーメールが返ってくるようであれば、先方に問い合わせたほうがよいだろう。
DNSのデータ不整合
もう1つ考えられる原因はDNSが障害を起こしていたり、正しい配送先を示していないというものだ。インターネットを介してメールを送信するメールサーバは、DNSの仕組みを利用して送信先のメールサーバを特定する。DNSにはMX(Mail eXchanger)レコードというメールサーバを示す情報があり、送信先メールアドレスのドメインパートに対応するMXレコードが送信先のメールサーバになる。
MXレコードを調べた結果が正しくないと、送信先のメールサーバに接続できなくなるのはいうまでもない。DNSのレコードを更新する管理者の設定ミスのほか、DNSキャッシュの内容が正しく更新されず古い情報が提供されている可能性もある。
bindをはじめ、多くのDNSサーバソフトウェアは、検索した結果をキャッシュしてレスポンスを向上させるとともにネットワークの負荷を軽減するようになっている。キャッシュの生存時間(TTL:Time To Live)は、DNSのレコードごとに設定されているものの、DNSサーバによってはそれに従わずもっと長期にわたってキャッシュを保持するものがある。キャッシュの内容が最新かどうかを確認するには、キャッシュサーバと対象ドメインに権威を持つ(そのドメインを担当する)DNSサーバ双方に問い合わせて結果を比較すればよい。
キャッシュの整合性チェック
画面2はWidnows XPのnslookupコマンドを用いて“nmag.jp”のMXレコードを調べた結果だ。DNSサーバを指定していないので、システムで設定されているサーバ(ns.example.com:キャッシュ機能あり)に問い合わせている。キャッシュサーバは“nmag.jp”に対応するメールサーバはmail.nmag.jpで、IPアドレスは202.181.97.86だと返答した。また、nmag.jpドメインに権威を持つDNSサーバはns2.dns.ne.jpとns1.dns.ne.jpであることもわかる。
次に、“nmag.jp”ドメインに権威を持つns1.dns.ne.jpに同じ問い合わせを行なった。下の画面3の結果を見ると、メールサーバのホスト名とIPアドレスいずれも先の画面2と同じなので、キャッシュサーバが保持している情報は正しいとわかった。
UNIX系のOSで調べる場合は、digコマンドかnslookupコマンドを使う。digを使う場合は、
$ dig nmag.jp MX
$ dig @ns1.dns.ne.jp nmag.jp MX
を実行すると、それぞれ画面2、画面3と同じことを調べられる。また、キャッシュの生存時間も表示される。
(次ページ、「ローカルメールサーバがすぐにエラーを返してくる」に続く)
この連載の記事
-
第7回
サーバー・ストレージ
DHCPサーバからIPアドレスが発行されない -
第6回
サーバー・ストレージ
RAIDのエラー対策をしていますか? -
第5回
サーバー・ストレージ
ファイルサーバのファイルが操作できない -
第4回
サーバー・ストレージ
ファイルサーバの文字化けの解消方法は? -
第3回
ネットワーク
ハードディスクのクラッシュに備えよう -
第2回
サーバー・ストレージ
まずはリモートでトラブルの原因を切り分けよう -
第1回
サーバー・ストレージ
管理者の心構えはできていますか? -
ネットワーク
サーバトラブル解決のセオリー<目次> - この連載の一覧へ