新しいガイド:評判を損なわずに専用IPをウォームアップする方法。 続きを読む →
MigoSMTP
認証更新日 2026/10/16

DKIM、SPF、DMARC:設定完全ガイド

3つの DNS レコードが、メールボックスプロバイダーがドメインを信頼するかどうかを左右します。それぞれの仕組みと、正しく公開する方法を解説します。

IR
執筆 Ishita Rao
Email Authentication Engineer
レビュー Amara Okafor
  • 公開済み2026/04/14
  • 読了時間1 分
  • 文字数142 語
このガイドを共有

ひと目でわかる要点 所要時間:約30分(DNS の反映待ちを除く) · 必要なもの:DNS プロバイダーへのアクセス権

要点

  1. なぜ3つのレコードが必要か。 SPF、DKIM、DMARC は、それぞれ異なる問いに答えます。
  2. SPF:送信を許可する送信元を列挙する。 SPF は、ドメインのメールの送信を許可するサーバーを列挙する、ドメイン上の TXT レコードです。
  3. DKIM:すべてのメッセージに署名する。 DKIM は、各メッセージに暗号化署名を付与します。
  4. DMARC:ポリシーを設定する。 DMARC は、他の2つを結び付けます。
  5. アライメントをわかりやすく説明すると。 DMARC は、SPF または DKIM のどちらかが通過し、かつ検証対象のドメインが From アドレスのドメインと一致している場合に通過します。
  6. 検証とモニタリング。 自分で管理しているメールボックスにテストメッセージを送り、受信したメールのヘッダーにある認証結果を読みます。

なぜ3つのレコードが必要か

SPF、DKIM、DMARC は、それぞれ異なる問いに答えます。SPF は、送信サーバーがそのドメインとして送信を許可されているかを確認します。DKIM は、メッセージがそのドメインによって署名され、配送中に改ざんされていないかを確認します。DMARC は、これらのチェックに失敗した場合に受信側がどう扱うべきかを定め、その結果を送信者に知らせます。

現在のメールボックスプロバイダーは、特に大量送信者に対して3つすべてを求めています。これらを公開することは、フィッシングによる自社ドメインの偽装を防ぐことにもなります。

SPF:送信を許可する送信元を列挙する

SPF は、ドメインのメールの送信を許可するサーバーを列挙する、ドメイン上の TXT レコードです。SPF レコードはドメインごとに1つだけ公開し、その中に MigoSMTP のダッシュボードに表示される値を include してください。末尾の ~all は、それ以外の送信元を疑わしいものとして扱うことを示します。正規の送信元がすべて列挙されていると確信できた段階で、-all に移行するチームもあります。

v=spf1 include:YOUR_SPF_HOST ~all

レコードの DNS ルックアップ数は10回未満に収めてください。include はすべて上限にカウントされるため、使わなくなったプロバイダーは削除しましょう。1つのドメインに SPF レコードを2つ公開するとエラーになり、SPF は失敗します。

DKIM:すべてのメッセージに署名する

DKIM は、各メッセージに暗号化署名を付与します。受信側は、セレクター名のもとで DNS に公開された公開鍵を使って、その署名を検証します。MigoSMTP が追加すべき正確なレコードを提示します。通常は、1つ以上の CNAME または TXT レコードです。

SELECTOR._domainkey.example.com  CNAME  YOUR_DKIM_TARGET

ダッシュボードに表示されたとおりにレコードを追加し、その後で検証してください。送信サービスごとに別々のセレクターを使うと、他に影響を与えずに、1つだけをローテーションしたり削除したりできます。

DMARC:ポリシーを設定する

DMARC は、他の2つを結び付けます。メッセージが、表示される From ドメインとの SPF と DKIM のアライメントの両方に失敗した場合に、受信側がどう扱うべきか、そしてその結果をどこにレポートするかを指定します。

_dmarc.example.com  TXT  "v=DMARC1; p=none; rua=mailto:dmarc@example.com"

レポートを有効にした p=none から始め、レポートを読んですべての正規の送信元を洗い出し、不足を修正してから、quarantine、最後に reject へと進みます。いきなり reject にすると、自社の正規のメールをブロックしてしまうことがあります。

アライメントをわかりやすく説明すると

DMARC は、SPF または DKIM のどちらかが通過し、かつ検証対象のドメインが From アドレスのドメインと一致している場合に通過します。DKIM の場合、対象は署名に含まれるドメインです。SPF の場合は、From アドレスではなくエンベロープ送信者のドメインです。

このため、共有ドメインに頼るよりも、自社ドメインから送信し、そのドメインで DKIM 署名を行うほうが堅牢です。SPF と DKIM が通過しているのに DMARC のチェックが失敗する場合、たいていの原因はアライメントです。

検証とモニタリング

自分で管理しているメールボックスにテストメッセージを送り、受信したメールのヘッダーにある認証結果を読みます。spf=pass、dkim=pass、dmarc=pass と表示されるはずです。レコードを直接照会して確認することもできます。

dig +short TXT example.com
dig +short TXT _dmarc.example.com
dig +short CNAME SELECTOR._domainkey.example.com

モニタリングは継続してください。他のツールのために行った DNS の変更が、気づかないうちにレコードを壊すことがあり、新しい送信元も時間とともに増えていきます。DMARC レポートは定期的に確認しましょう。

よくある間違い

SPF レコードを2つ公開する、DNS ルックアップが10回を超える、DMARC レコードを誤ったホスト名に追加する、DNS プロバイダーが長い TXT 値を分割・改変してしまう、メールを送信するサブドメインを見落とす、といったミスがあります。

検証に失敗した場合は、そのドメインで認証チェッカーを実行して、インターネット上の他の相手からどう見えているかを確認し、DNS の変更が反映されるのを待ってから再試行してください。

参考資料と出典

MigoSMTP での設定方法:ヘルプセンターの記事

関連ガイドとツール

レコードが正しいか不安ですか。無料のチェッカーをお試しいただくか、ヘッダーをお送りいただければ読み解きをお手伝いします。

無料で始める

よくある質問

SPF、DKIM、DMARC は必要ですか。

ある程度の規模で送信するなら必要です。Gmail と Yahoo は認証を求めており、3つのレコードがそろうことで、受信側はメールが本当に送信者から届いたものかを検証できます。

設定する順番はどうなりますか。

まず送信元ごとに SPF と DKIM を設定し、次に p=none で DMARC を公開してレポートを読み、失敗を修正したうえで、ポリシーを段階的に厳格化します。

DMARC のアライメントとは何ですか。

SPF または DKIM を通過したドメインが、From ヘッダーのドメインと一致している必要があります。アライメントが取れていないと、SPF と DKIM が通過していても DMARC は失敗します。

レコードを確認するにはどうすればよいですか。

SPF、DKIM、DMARC チェッカーを使い、そのうえでテストメッセージを送信して Authentication-Results ヘッダーを読んでください。

トピック#dkim#spf#dmarc#認証
このガイドは役に立ちましたか?いただいたご回答は、ドキュメントの改善に役立てます。

数分で送信を始めましょう。

アカウントを作成し、ドメインを追加して、最初のメールを送信します。

無料で始める 営業に相談