Infra Ops Hub

メールが届かない時の切り分け — 実務フロー

最終更新: 2026-04-24 · 所要 7 分

結論

  • まず /tools/mail-deliverability で SPF / DKIM / DMARC を確認
  • MX が解決するか、ローカル名前解決とパブリック側で差が出ていないかを確認
  • Gmail / Yahoo の場合、レピュテーション低下の可能性も

どういう場面で必要か

サービスから送ったメール(サインアップ確認・パスワードリセット・通知)が Gmail / Yahoo / 法人 M365 で届かなくなった時。あるいは DMARC=reject 導入後に自社メールが迷惑判定される時。

実務で見るポイント

  • ステップ 1: Site Health Check で対象ドメインの mail カテゴリを確認
  • ステップ 2: SPF の終端(~all / -all / +all)を確認し、送信元 IP が include に入っているか
  • ステップ 3: DKIM セレクタを確認し、DNS 上の TXT と DKIM ヘッダ s= が一致しているか
  • ステップ 4: DMARC ポリシーを確認し、aspf/adkim が strict だと subdomain でも整合要求される
  • ステップ 5: 送信元 IP の逆引き(PTR)と HELO が一致しているか
  • ステップ 6: メール本文に怪しいリンクや画像のみ / 大量外部画像がないか

よくある失敗

  • SPF を 2 行に分けて TXT 登録(1 ドメイン 1 SPF レコードが正解)
  • DKIM セレクタをプロバイダ側と DNS で揃え忘れる
  • DMARC=reject に急いで上げて自社メールを弾く
  • Gmail 側の「迷惑メール報告」が数件蓄積されて IP レピュテーション低下
  • PTR 未設定の VPS から直接送信してレピュテーション低下

チェックリスト

  • [ ] /tools/mail-deliverability の総合ランクが A
  • [ ] SPF が pass(/tools/spf-generator で組み立て直し)
  • [ ] DKIM selector が 2 件以上(ローテーション用)
  • [ ] DMARC p=quarantine / reject で RUA レポート受信中
  • [ ] 送信元 IP の逆引き設定あり
  • [ ] VPS 直接送信ではなく、配信サービス(Resend / SES 等)経由

よくある質問

Gmail で毎回迷惑に入る場合は?

受信箱に入れたメールに対して「迷惑メールではない」を繰り返し、SPF/DKIM/DMARC をすべて pass させ、配信サービス(/compare/mail-delivery-services)を挟むと改善します。

DMARC レポート(RUA)は誰に届く?

DMARC レコードの rua= に指定したアドレスです。別ドメインを指定する場合は受信側で TXT `_report._dmarc.yours.com v=DMARC1; rua=mailto:xxx;` が必要になる場合があります。

VPS から直送するのは禁止?

禁止ではありませんが、IP レピュテーションが低く届かないことが多いため、低コストでも配信サービスを経由するのが現実的です。

PTR を設定するには?

クラウド / VPS 側の管理画面から「逆引きレコード(PTR)」を申請します。Amazon SES の場合は Elastic IP 申請後に設定可能。

関連ツール・比較・ガイド