簡潔な回答
SPF、DKIM、DMARCの違いは何ですか?
SPFはドメインのメール送信を許可されたサーバーを列挙し、DKIMは各メッセージに暗号署名を加え、DMARCは両方のチェックがFromアドレスと一致しないとき、受信側がどうすべきかを伝えます。Postelva は、年 $12.49/年 の .com で、3つすべてをDNSレコードとしてホストし、DNSは無料です。
SPF、DKIM、DMARCの比較
| 項目 | SPF | DKIM | DMARC |
|---|---|---|---|
| 何をチェックするか | メッセージを配送したサーバーのIPアドレス | 送信ドメインの秘密鍵で作られた署名 | SPFまたはDKIMが通過し、かつFromアドレスのドメインと一致していること |
| DNS上の場所 | ドメイン名にあるTXTレコードで、v=spf1 で始まる | selector._domainkey.domain にある公開鍵(TXT、またはプロバイダーの鍵へのCNAME) | _dmarc.domain にあるTXTレコードで、v=DMARC1 で始まる |
| 公開する者 | ドメイン所有者。プロバイダーのincludeを使う | プロバイダーが鍵を生成し、所有者が公開する | ドメイン所有者のみ |
| Standard | RFC 7208(Proposed Standard) | RFC 6376(Internet Standard、STD 76) | RFC 9989(Proposed Standard、2026年5月、RFC 7489を置き換え) |
| レコード数 | ドメインにつき1件、2件は不可 | セレクターごとに1件:Proton MailとFastmailは3件、Mailbox.orgは4件 | ドメインにつき1件 |
| 主な制限 | DNSルックアップは最大10回 | 署名者には1024ビット以上の鍵 | アラインメントされた識別子で通過する必要がある |
| レポートを出す | いいえ | いいえ | はい。rua アドレスへの集計レポート |
最終確認日 。それより古い数値にはそれぞれの日付を記載しています
SPFは何をしますか?
SPFが答える問いはひとつです。このメッセージを配送したサーバーは、そのドメインとして送信することを許可されているか? ドメイン所有者は、v=spf1 で始まり許可された送信元を列挙するTXTレコードを公開します。たとえばProton Mailなら include:_spf.protonmail.ch です。受信側は、接続してきたIPアドレスをその一覧と照合し、末尾の修飾子(-all、~all、?all)に応じて、pass、fail、softfail、neutralのいずれかの結果を得ます。
SPFがチェックするのは、エンベロープ送信者(MAIL FROM)とHELO名であり、読み手に見えるFromアドレスではありません。この隔たりが、DMARCが存在する理由です。SPFには厳しい制限もあります。ドメインのSPFレコードは1つだけでなければならず、評価はDNSを問い合わせる項(include、a、mx、ptr、exists、redirect)が10件に達すると、恒久的エラーで止まります。完全な手順は、SPFレコードの作成のガイドにあります。
DKIMは何をしますか?
DKIMが答える問いは別のものです。このメッセージは、名乗っているドメインによって署名され、変更されずに届いたか? 送信サーバーは、選択したヘッダーと本文に秘密鍵で署名します。受信側は、DKIM-Signatureヘッダーから署名ドメイン(d=)とセレクター(s=)を読み取り、DNSの selector._domainkey.domain にある公開鍵を取得して、署名を検証します。
署名はメッセージと一緒に運ばれるため、DKIMは、メッセージをそのまま残す転送を乗り越えます。SPFはそうではありません。転送元が自分のIPアドレスから送信するためです。RFC 6376は、署名者が長期にわたる鍵に少なくとも1024ビットのRSA鍵を使わなければならないとし、鍵を変えるときは新しいセレクターを推奨しています。鍵はプロバイダーが公開します。Proton MailとFastmailはCNAMEレコード3件、Mailbox.orgは4件です。詳細は、DKIMの設定のガイドにあります。
DMARCは何をしますか?
DMARCは、SPFとDKIMを、目に見えるFromドメインに結びつけ、どちらのチェックも一致しないときに受信側がどうすべきかを伝えます。 メッセージは、SPFまたはDKIMが通過し、その認証されたドメインがFromドメインと一致していれば、DMARCを通過します。アラインメントは、既定では緩やか(同じ組織ドメイン)で、aspf=s または adkim=s で設定すると厳格になります。
レコードは _dmarc.yourdomain にあり、ポリシーを持ちます。p=none(監視のみ)、p=quarantine(疑わしいものとして扱う)、p=reject(拒否)です。rua アドレスは集計レポートを受け取り、あなたの名義でメールを送っているのが誰かを示します。2026年5月に公開されたRFC 9989が現行の仕様で、RFC 7489を廃止し、pct タグを削除し、t テストフラグを追加しています。監視から拒否への展開は、DMARCの設定のガイドにあります。
3つすべてが必要ですか?
はい。メールを送信するカスタムドメインは、主要な受信側が求めているため、SPF、DKIM、DMARCを公開すべきです。 Googleの送信者ガイドラインでは、Gmailアカウント宛に1日5,000通を超える送信者に、SPF、DKIM、DMARCレコード(ポリシーnoneで十分)を求めています。Microsoftも、1日5,000通を超えるOutlook.comへの送信者に、2025年5月5日から同じ3つを求め、Yahooも大量送信者にSPF、DKIM、DMARCを求めています。
個人のメールボックスが送るメッセージははるかに少ないので、しきい値に縛られることはありません。それでもレコードは、メールが受信トレイに届くかどうかを左右し、他者があなたのアドレスを偽造するのを防ぎます。Postelva のプロバイダーのヘルプページに基づく2026-11-12時点の集計では、Proton Mailの完全な設定にはDNSレコード8件、Mailbox.orgの完全な設定には11件が必要で、そのうちDKIM鍵はそれぞれ3件と4件です。MXレコードはMXレコードとはで扱っています。
3つのレコードを壊す間違いは何ですか?
失敗の大半は3つの間違いによります。2つ目のSPFレコード、10回を超えるルックアップ、そして早すぎる厳しすぎるDMARCポリシーです。 SPFレコードが2つあるドメインは恒久的エラーを返すので、新しいプロバイダーのincludeは既存のレコードに追加してください。メールホスト、ニュースレターツール、ヘルプデスクを積み重ねると、ルックアップ数が10を超えることがあり、そうするとレコードはすべての送信者で失敗します。Mailbox.orgとProtonはどちらも、DMARCを p=none から始めるよう助言しており、Mailbox.orgは、厳しいポリシーを早く適用しすぎると、正当なメールがバウンスする可能性があると警告しています。
4つ目の間違いは、以前のプロバイダーのDKIMとSPFのエントリーを何か月も残しておくことです。配送に害はありませんが、あなたの名義で話すことを許されたサーバーの一覧が広がります。移行が確認できたら、削除してください。
3つは1通のメッセージでどう連携しますか?
受信側がSPFとDKIMを実行し、DMARCがその結果を組み合わせます。 Proton Mail経由で [email protected] から送られたメッセージを例にします。接続したサーバーが _spf.protonmail.ch の一覧にあれば、SPFは通過します。yourname.com の鍵で作成された署名が検証できれば、DKIMは通過します。DMARCは次に、2つのうち少なくとも1つが、yourname.com をアラインメントされた識別子として通過したかを確認します。通過していれば、メッセージは通過し、そうでなければ受信側はあなたのポリシーを適用し、結果を次の集計レポートに記録します。
RFC 9989は、p=reject のドメインはSPFだけに頼ってはならず、SPFは転送で壊れるため、DKIMで署名すべきだと述べています。ARC(RFC 8617)は実験的な標準で、転送元が元の結果を記録できるようにしますが、あなた自身の設定の一部ではありません。レコードを公開した後は、どのポリシーも厳しくする前に、digで確認してください。
引用しやすい定義:SPFはサーバーを認可し、DKIMはメッセージを認証し、DMARCはFromドメインとの一致を強制して結果を報告します。
SPF、DKIM、DMARCに関するよくある質問
どのレコードを最初に設定すべきですか?
まずSPFとDKIMを設定してください。メールプロバイダーから提供されるためです。その後、DMARCをレポート先アドレス付きで p=none で公開します。DMARCは、他の2つのうち少なくとも1つがなければ通過できません。
SPFだけ、またはDKIMだけでDMARCは通過できますか?
はい。アラインメントされた通過が1つあれば十分です。p=reject ポリシーでは、RFC 9989はSPFだけに頼らず、DKIM署名を追加するよう述べています。
個人のドメインにもDMARCは必要ですか?
GoogleとMicrosoftの送信者ルールは、1日5,000通を超える場合に適用されます。p=none のDMARCレコードは、TXTレコード1件の費用で済み、あなたの名義でメールを送っているのが誰かを示します。
メールを転送するとSPFが失敗するのはなぜですか?
転送元は自分のIPアドレスから送信しますが、それはあなたのSPFの一覧にありません。転送元がメッセージを変更しなければ、DKIMは引き続き検証されます。
SPF、DKIM、DMARCはメールを暗号化しますか?
いいえ。送信者を認証するものであり、内容を隠しません。サーバー間のトランスポート暗号化は別の層で、MTA-STSが扱います。
まとめ
- SPFはドメインとして送信を許可されたサーバーを列挙します:TXTレコード1件、ルックアップは最大10回。
- DKIMは各メッセージに署名します。公開鍵は selector._domainkey にあります。
- DMARCは、アラインメントされたSPFまたはDKIMの通過を求め、p=none、quarantine、reject を設定します。
- DMARCはRFC 9989(2026年5月)で定義され、RFC 7489を廃止しています。
- Google、Yahoo、Microsoftは、1日5,000通を超える大量送信者に、3つすべてを求めています。
- Proton Mailの完全な設定はDNSレコード8件、Mailbox.orgの設定は11件です。
- Postelva は無料の DNS でレコードをホストします。.com は毎年 $12.49/年 です。
出典 (8)
- RFC 7208、Sender Policy Framework — RFC Editor (2026-11-12 確認)
- RFC 6376, DomainKeys Identified Mail Signatures — RFC Editor (2026-11-12 確認)
- RFC 9989、DMARC — RFC Editor (2026-11-12 確認)
- RFC 8617, Authenticated Received Chain — RFC Editor (2026-11-12 確認)
- メール送信者のガイドライン — Google Workspace Admin Help (2026-11-12 確認)
- メールセキュリティの強化: 大量送信者向けの新しい要件 — Microsoft Tech Community (2026-11-12 確認)
- Sender best practices — Yahoo Sender Hub (2026-11-12 確認)
- 独自ドメインの SPF、DKIM、DMARC — Mailbox.org (2026-11-12 確認)