メールが届かない時に確認するDNS設定|DNSが原因のメール障害を効率よく切り分ける方法

メールが届かない時に確認するDNS設定

メールが届かない時に確認するDNS設定

メールシステムのトラブルで最も多い問い合わせの一つが「メールが届かない」という問題です。

SMTPサーバやネットワーク機器の障害が原因の場合もありますが、実際にはDNS設定が原因となっているケースが非常に多くあります。

特にメールサーバ移行後やGoogle Workspace、Microsoft 365導入時にはDNS設定ミスによる障害が頻発します。

本記事ではメールが届かない場合に確認するべきDNS設定を中心に、効率的な切り分け方法を解説します。

メール配送はDNSに依存している

メール送信時、送信サーバは宛先ドメインのDNS情報を確認します。


user@example.com
↓
example.com
↓
MXレコード確認
↓
配送先決定

DNS設定に問題があると配送そのものができません。

最初に確認すること

メールが届かない場合、まず影響範囲を確認します。

  • 全員届かない
  • 特定ドメインだけ届かない
  • 外部から届かない
  • 送信だけ失敗する

症状によって確認箇所が変わります。

MXレコード確認

最優先で確認する項目です。

$dig example.com MX

結果例です。
example.com. IN MX 10 mail.example.com.

MXレコードが存在するか確認します。

MXレコードが存在しない場合

結果が次のようになります。


ANSWER: 0

メール配送に失敗する可能性があります。

MX先のAレコード確認

MXレコードが正常でも安心できません。

$ dig mail.example.com A

結果例です。
mail.example.com. IN A 203.0.113.10

IPアドレスが取得できることを確認します。

MX先が存在しない場合

次のような状態です。


MX 10 mail.example.com.

しかし


mail.example.com

が存在しません。

メール配送は失敗します。

SMTPポート確認

DNSが正常でもメールサーバへ接続できなければ意味がありません。

$ telnet mail.example.com 25

または

$ nc -zv mail.example.com 25

SPF確認

送信メールが迷惑メールになる場合はSPFを確認します。

$ dig example.com TXT

結果例です。
v=spf1 mx -all

SPF未設定の影響

  • 迷惑メール判定
  • 受信拒否
  • 信頼性低下

近年は設定必須と言えます。

DKIM確認

公開鍵が存在するか確認します。

$ dig mail._domainkey.example.com TXT

TXTレコードが返ることを確認します。

DMARC確認

DMARC設定も確認します。

$ dig _dmarc.example.com TXT

結果例です。
v=DMARC1; p=none

逆引きDNS確認

メールサーバ運用では重要です。

$ dig -x 203.0.113.10

メールサーバ名が返ることを確認します。

逆引き未設定の影響

  • 迷惑メール判定
  • 受信拒否
  • スコア低下

特にGmailで重要です。

TTL確認

メールサーバ移行後はTTLも確認します。

dig example.com MX

結果です。
example.com. 86400 IN MX

TTLが長いと古いサーバへ配送される場合があります。

Google Public DNS確認

$ dig @8.8.8.8 example.com MX

Googleから見た情報を確認できます。

Cloudflare DNS確認

$ dig @1.1.1.1 example.com MX

DNS伝播状況確認に便利です。

権威DNS確認

最も重要な確認です。

dig @ns1.example.com MX example.com

正しい設定が登録されているか確認します。

セカンダリーDNS確認

複数DNS運用時です。

dig @ns2.example.com MX example.com

同じ情報を返すことを確認します。

SOAシリアル確認

$ dig SOA example.com

ゾーン転送失敗の確認に利用します。

Google Workspace移行時によくある問題

  • 旧MX削除忘れ
  • SPF未変更
  • DKIM未有効化
  • DMARC未設定

非常によく発生します。

Microsoft 365移行時によくある問題

  • MX変更忘れ
  • SPF未更新
  • Autodiscover設定ミス

導入時に確認が必要です。

実務で使う確認コマンド

$ dig example.com MX

$ dig mail.example.com A

$ dig example.com TXT

$ dig _dmarc.example.com TXT

$ dig -x 203.0.113.10

まずはこれらを確認します。

メール障害時の確認順序


MX確認
↓
A確認
↓
SMTP接続確認
↓
SPF確認
↓
DKIM確認
↓
DMARC確認
↓
逆引き確認

この順番が効率的です。

実務で覚えておきたいポイント

  • メール配送はDNSに依存している
  • まずMXレコードを確認する
  • MX先のAレコードも確認する
  • SPF・DKIM・DMARCは必須
  • 逆引きDNSも重要である
  • TTLやDNS伝播も考慮する

まとめ

メールが届かない原因はSMTPサーバだけではなく、DNS設定が関係しているケースが非常に多くあります。

特にMXレコード、Aレコード、SPF、DKIM、DMARC、逆引きDNSは必ず確認するべき項目です。

メール障害が発生した場合は、まずDNS設定を確認する習慣を身につけることで、迅速な原因特定につながります。

実務ではdigコマンドを活用しながら、体系的に切り分けを行うことが重要です。