← Blog

メールの認証、徹底解説: SPF、DKIM、DMARC 実設定ガイド

技術的な SPF、DKIM、DMARC、メール認証、配信可能性 July 9, 2026 by Mailer To Go チーム
メールメール認証の実践ガイド:実際のコピペ対応SPF、DKIM、DMARCレコード、digとGmailの「メールのソースを表示」で検証する方法、そしてメール配信を中断せずにDMARCポリシーをp=noneからp=rejectにロールアウトする方法。

あなたが送信するすべてのメールは「このドメインの代わりに送信することが許可されています」という主張をしています。SPF、DKIM、DMARCは、受信サーバーがその主張を確認できるようにする3つのDNSレコードです。これらを正しく設定すればメールは受信トレイに届きますが、設定を間違えたり省略したりすると、GmailやYahoo、Outlookはますますメールをスパムに送信するか拒否するようになります。

2024年以降、GmailとYahooはSPF、DKIM、およびDMARCポリシーの3つすべてを大量送信者に要求しています。これは、3つすべてを正しく設定し、コマンドラインから検証し、既存のメールを壊さずにDMARCポリシーをロールアウトするための実用的なコピー&ペーストガイドです。

まず各レコードの概念的な背景を知りたい場合は、DKIM とは?SPFレコードとは?DMARCとは?を参照してください。このポストはこれら3つの実践的な付随ガイドです。

90秒のメンタルモデル

3つのレコードは、メッセージについての3つの異なる質問に答えます。

SPFとDKIMはチェックを実行し、DMARCはそれらのチェックをポリシーに変え、可視性を与えます。3つすべてが必要です。

SPF:送信者を認可する

SPFはenvelope-fromに表示されるドメイン上の単一の TXT レコードです。MailerToGoから mtg.yourdomain.com で送信する場合:

mtg.yourdomain.com.   TXT   "v=spf1 include:_spf.mailertogo.net ~all"

人々がつまずく2つのルール:

  1. ドメインあたり1つのSPFレコード。 同じ名前に2つの v=spf1 レコードを公開することはありません — これはpermerrorであり、SPFは失敗します。1つにマージします: "v=spf1 include:_spf.mailertogo.net include:_spf.google.com ~all".
  2. 10ルックアップ制限。 SPFは評価中に最大10のDNSルックアップを許可します。すべての include: がカウントされます。ESPのスタッキング、Google、Microsoft、MailerToGoを1つのルートレコードに重ねることは、10を超える可能性があり、すべてのSPFを壊します — これは専用サブドメインからアプリメールを送信する大きな理由です。(Why MailerToGo sends from mtg.yourdomain.comを参照。)

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

DKIMは秘密鍵を使用して各メッセージに署名します。受信者はDNSから一致する公開キーをフェッチします。MailerToGoを使用するとキーを生成または貼り付けることはありません — アカウント固有のセレクターをポイントする CNAME を公開し、私たちが基盤となるキーをローテーションします:

; Selectorはアカウント固有です — ダッシュボードから正確な値を使用します
mtg1._domainkey.mtg.yourdomain.com.   CNAME   mtg1.dkim.mailertogo.net.

これは私たちが制御するレコードへの CNAME であるため、キーローテーションは自動です:キーをロールオーバーすると、公開されている公開キーは私たち側で変更されあなたのDNSは編集不要です。公開レコードを検査する場合、標準的なDKIM公開キーが表示されます:

mtg1._domainkey.mtg.yourdomain.com.   TXT   "v=DKIM1; k=rsa; p=MIGfMA0GCSq...QAB"

有効なDKIM署名は、SPFがよく破壊される転送を生き残るあなたのメールです — したがってDKIMは2つの認証シグナルのより耐久性があります。

DMARC:ポリシーを設定してレポートを取得する

DMARCは固定名 _dmarc.<domain> に存在し、SPF/DKIMの結果を見えるFrom:ドメインに結び付けます。モニターモードで開始して、実際に何が送信されているかを学習してから何かを強制します:

_dmarc.yourdomain.com.   TXT   "v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain.com; fo=1; adkim=s; aspf=s"

タグ別:

DMARCアライメントは微妙な部分です:SPFまたはDKIMがパスするだけで十分ではありません — 彼らがパスするドメインは見えるFrom:のドメインとアラインする必要があります。これは送信アーキテクチャが重要な理由であり、完全に制御するサブドメインがアライメントを直進させる理由です。

コマンドラインからすべてを検証する

レコードが生きていると仮定しないでください — チェックしてください。dig (またはWindowsの nslookup)は、リゾルバーが正確に何を見えるかを示します:

# SPF — 単一のv=spf1行を期待
dig +short TXT mtg.yourdomain.com

# DKIM — CNAMEをフォローして公開キーへ
dig +short CNAME mtg1._domainkey.mtg.yourdomain.com
dig +short TXT   mtg1._domainkey.mtg.yourdomain.com

# DMARC — 常に_dmarc.<domain>で
dig +short TXT _dmarc.yourdomain.com

その後、実際のメッセージを自分自身に送信して受信を読みます。Gmailでメッセージを開く → 元の形式を表示。あなたは見たいです:

SPF:   PASS  with domain mtg.yourdomain.com
DKIM:  PASS  with domain mtg.yourdomain.com
DMARC: PASS

3つすべてがアライン済みドメインでPASSを表示する場合、完了です。

メールを壊さずにDMARC強制をロールアウトする

正当なメールをダウンさせる間違いは p=reject に直接ジャンプすることです。代わりにランプ、各ステップで rua レポートを監視:

  1. p=none — 1~2週間監視します。集計レポートを読んでください。すべての正当な送信者がパスして配置されていることを確認します。
  2. p=quarantine; pct=25 → 徐々に pct を100に向けて上げます。失敗はスパムに、虚無に送られるため、間違いは回復可能です。
  3. p=reject — 完全強制。レポートがクリーンになったら、ここに到達します。これはGmail/Yahooが報酬を与えるレベルであり、正確なドメインスプーフィングを止めます。

一般的な失敗と意味

短いバージョン、そしてMailerToGoがどのように役立つか

SPFは誰が送信できるかを言い、DKIMはメッセージが本物で変更されていないことを証明し、DMARCは両方をあなたの見える ドメインに結び付け、受信者に何をすべきかを伝えます。3つすべてを設定し、dig とGmailの元の形式を表示で検証し、DMARCを nonequarantinereject からランプします。

MailerToGoを使用する場合、DKIMキーとそのローテーションはあなたのために処理されます、そしてあなたのダッシュボードは公開する正確なSPF/DKIM/DMARCレコードを表示します。委任 mtg.yourdomain.com サブドメインを使用する場合、単一のNSレコードから私たちがすべてのレコードを公開し、維持します — 手動DNSまったくありません。代わりにレコードを所有することを好みますか?手動サブドメインセットアップガイドは、アプリケーション設定(envelope-from対From:)をステップバイステップで説明します。

基本的な標準については、MailerToGoはSPFDKIMDMARC、およびそれらがどのように適合するかの平文リファレンスも保持しています。