MailchimpのSPF・DKIM・DMARC設定。
Mailchimpのドメイン認証は、CNAMEによるDKIMで行います。共有のSPFの行を貼り付ける方式ではありません。Account & billing → Domainsで、まずメールで届くコードでドメインを確認し、次に「domain authentication」を実行します。すると、2つのCNAMEレコード(k2._domainkey、k3._domainkey)と、DMARCのTXTレコードが表示されます。CNAMEレコードは、ローテーションされるDKIM鍵をMailchimpに委任するものです。これらが解決されると、メールはMailchimpによって自社ドメインとして署名され、DKIMのアライメントによってDMARCに成功します。未認証のMailchimpメールにGmailが付ける「on behalf of」の表示も消えます。ルートドメインに追加すべき共有のSPFのincludeはありません。さらに重要な点として、追加してもDMARCの成功にはつながりません。
Mailchimpを認証すべき理由
Mailchimpでのドメイン認証は形式的な作業ではなく、受信トレイに届くか迷惑メールフォルダーに振り分けられるかを左右します。Mailchimp自身も、現在はこれを強制しています。2024年2月以降、GmailとYahooは、すべての大量送信者(1日あたり約5,000通以上)に対し、SPF、DKIM、DMARCにアライメントが一致した状態で成功することを義務付けています。Microsoftも2025年に、同じ1日5,000通の基準を個人向けの受信トレイ(Outlook、Hotmail、Live)に広げました。これを受けてMailchimpはドメイン認証を事実上必須とし、無料の公開メールアドレス(gmail.com、yahoo.comなど)をFromアドレスにしたキャンペーンのブロックを始めました。認証するまで、MailchimpはMailchimp自身のドメインで送信します。受信者には実際には自社からのメールではないことが伝わり、Fromアドレスのアライメントは一致せず、DMARCにも成功できません。送信者レピュテーションも、他の未認証のMailchimp送信者全体と共有されます。さらにMailchimp特有の事情により、DKIMは欠かせません。MailchimpはReturn-Pathを自身のバウンス用ドメインに置いたままにするため、SPFのアライメントが自社ドメインと一致することはなく、DMARCの成功を支える仕組みはDKIMだけです。CNAMEレコードを省略すると、アライメントの一致した認証がまったくない状態になります。
MailchimpにおけるSPFの実情
Mailchimpは、CNAMEによるDKIMで認証するサービスです。そのため、ルートドメインに追加すべき「include:servers.mcsv.net」はありません。古いチュートリアルのほとんどが誤っているのはこの点で、追加したとしてもDMARCに成功するわけではありません。理由は次のとおりです。バウンスを処理するのは自社ではなくMailchimpであるため、Mailchimpはすべてのキャンペーンのエンベロープ送信者(Return-Path)を、自身のバウンス用ドメイン(mcsv.netまたはmailchimpappのサブドメイン)に設定して送信します。SPFは常にこのエンベロープのドメインに対してチェックされるので、照合先はMailchimpのサーバーであり、Fromドメインではありません。チェック自体には成功することもありますが、組織ドメインとのアライメントは一致せず、DMARCがSPFを評価するのはアライメントが一致した場合だけです。Mailchimpのドメイン認証フローが、DKIM用の2つのCNAMEレコードとDMARCレコードを求める一方で、SPFに一切触れないのは、このためです。k2/k3セレクターを使ってd=yourdomain.comで署名するDKIMこそが、アライメントを一致させてDMARCの成功を支えます。今でもルートドメインのSPFレコードにinclude:servers.mcsv.netを追加するよう勧めるガイドがありますが、MailchimpのIPに対するSPFのチェック自体を成功させるだけで、DMARCのアライメントには何の効果もありません。現行のCNAMEフローでは求められず、SPFの10回のルックアップのうち1回を消費するだけなので、追加しなくても問題ありません。ルートドメインのSPFレコードは、Return-Pathに実際に自社ドメインを使う送信者(Google Workspace、Microsoft 365、トランザクションメールのリレーなど)のために残し、MailchimpについてはDKIMに任せてください。
2つの設定方法
Entriによる自動接続(推奨)
- MailchimpがDNSホストにログインし、CNAMEレコードとDMARCレコードを追加します
- ホストのラベルやレコードタイプを間違える可能性が最も低い方法です
- Entriが対応するDNSホスト(Cloudflare、GoDaddy、Namecheapなど)を使っている場合に最適です
- Entriのポップアップから、DNSプロバイダーにサインインする必要があります
DNSへの手動入力
- MailchimpにCNAME 1、CNAME 2、DMARCレコードが表示されるので、自分でコピーします
- Entriが対応していないホストを含め、どのレジストラでも使えます
- 公開する内容を正確に管理でき、DMARCレコードを既存のレコードと1つにまとめられます
- 作成されるレコードは同じです。Entri経由ではなく手作業で追加するだけの違いです
設定手順
- 1
Domainsページを開く
プロフィールアイコン(左下)→ Account & billing → Domainsをクリックします。このページでドメインの確認と認証の両方を行います。この2つは別々の手順です。
- 2
先にドメインを確認
Add & Verify Domainをクリックし、そのドメインのメールアドレス(例:you@yourdomain.com)を入力して、Send Verification Emailをクリックします。accountservices@mailchimp.comから届いたメールを開き、Verify Domain Accessをクリックするか、コードをMailchimpに貼り付けてVerifyをクリックします。これで所有権が証明され、そのドメインのFromアドレスを使えるようになります。リンクとコードの有効期限は7日間で、gmail.comなどの公開ドメインは確認できません。
- 3
認証を開始
確認済みになったドメインの横にあるStart authenticationをクリックします。ドロップダウンからDNSホストを選び(画面の説明が変わるだけです)、Nextをクリックします。
- 4
自動(Entri)か手動かを選択
Continueをクリックすると、Entriが、対応するDNSホストにログインしてレコードを追加します。自分でレコードをコピーしてレジストラに貼り付ける場合は、「Or manually authenticate your domain」をクリックします。どちらの方法でも、作成されるDNSレコードはまったく同じです。
- 5
表示されたレコードをコピー
手動の画面には、CNAME 1とCNAME 2(それぞれName/HostとValue)に加え、DMARCのTXTレコード(Hostの_dmarcとValue)が表示されます。正確にコピーしてください。セレクターと参照先はアカウントごとに表示されます。
- 6
DKIM用の2つのCNAMEレコードを追加
CNAMEレコードを2つ作成します。ホストk2._domainkey → 値dkim2.mcsv.netと、ホストk3._domainkey → 値dkim3.mcsv.netです(アカウントに表示されたホストと参照先をそのまま使ってください。古いアカウントでは、代わりにk1._domainkey → dkim.mcsv.netが1つだけ表示されることがあります)。タイプはCNAMEのままにし、AやTXTに変更しないでください。
- 7
DMARCのTXTレコードを追加
ホスト_dmarcに、v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comのような値でTXTレコードを1つ作成します。_dmarcレコードがすでにある場合は、この手順を飛ばしてください。1つのドメインに置けるのは1つだけです。
- 8
ホストのラベルとCloudflareのプロキシを修正
レジストラがドメインを自動で付加する場合は、重複を避けるためラベルだけを入力します(k2._domainkey.yourdomain.comではなくk2._domainkey)。Cloudflareでは、各CNAMEレコードを「DNS only」(グレーのクラウド)に設定します。プロキシが有効なオレンジのクラウドのCNAMEレコードはmcsv.netに解決されず、確認に失敗します。
- 9
MailchimpのDNSチェックを実行
Mailchimpに戻り、確認を実行します(古いアカウントではTest DNS Settingsボタンが表示されます)。DNSの反映は通常数分ですが、最大24~48時間かかることがあります。完了するとステータスが「Authenticated」に変わります。進まない場合は、Resolve / Restart authenticationを使い、レコードの値を確認し直してください。
- 10
認証済みドメインから送信
各オーディエンスの設定とすべてのキャンペーンで、Fromアドレスを認証済みドメインのもの(例:news@yourdomain.com)に設定します。これでメールが実際に自社ドメインとしてDKIM署名されます。DNSの確認だけでは、別のFromアドレスを設定済みのキャンペーンは変更されません。
追加するレコード
正確な値はMailchimpのセットアップウィザードで生成されます。以下は、DNSホストに追加するレコードの形式を示したものです。
| タイプ | ホスト | 値 |
|---|---|---|
| CNAME | k2._domainkey | dkim2.mcsv.netDKIM鍵1(Mailchimpが管理)。正確なセレクターと参照先はアカウントに表示されます |
| CNAME | k3._domainkey | dkim3.mcsv.netDKIM鍵2(k2と対になります)。古いアカウントでは、代わりにk1._domainkey → dkim.mcsv.netが1つだけ表示されることがあります |
| TXT | _dmarc | v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comDMARCポリシー:_dmarcレコードは1つのドメインにつき1つだけにします |
ルートドメインのSPF(v=spf1)のTXTレコードは1つだけにし、すべての送信元をこの1行にまとめてください。SPFレコードが2つあると、それ自体がエラーになります。
DNSルックアップの10回制限
SPFのDNSルックアップは10回までに厳格に制限されており、超えるとpermerrorを返して、どの受信側でも検証されなくなります。Mailchimpの設定がこの上限のうち何回を消費するかは、次のとおりです。
Mailchimpの推奨設定はルックアップを消費しません。10回すべてを、includeが必要な他の送信元に使えます。
DKIM
MailchimpではDKIMがすべてです。DKIMを担うのは2つのCNAMEレコードで、通常はk2._domainkey.yourdomain.comとk3._domainkey.yourdomain.comが、それぞれdkim2.mcsv.netとdkim3.mcsv.netを指します。TXTレコードとして鍵を貼り付けるのではなく、CNAMEレコードでMailchimpに委任するため、秘密鍵はMailchimpが保持し、これらのセレクターの背後で公開する鍵をローテーションできます。その際にDNSを再度編集する必要はありません。DKIMのTXTレコードを作成したり、鍵を自分でコピーしたりすることもありません。Mailchimpが付ける署名はd=yourdomain.comでセレクターはk2(またはk3)なので、Fromドメインとアライメントが一致し、これによってDMARCに成功します。ただし、注意点が1つあります。参照先(dkim2/dkim3.mcsv.net)はMailchimpの共有エンドポイントであり、鍵そのものは自社ではなくMailchimpのプラットフォーム上で管理されます。署名にはd=yourdomain.comが含まれるのでDMARCのアライメントには問題ありませんが、鍵を独自にローテーションしたりエクスポートしたりできないのはこのためです。2つのCNAMEレコードを表示どおりに追加し、Cloudflareを使っている場合は「DNS only」(グレーのクラウド)に設定します。あとはMailchimpのチェックで確認してください。
DMARC
DMARCは、ルートドメインに設定する別のポリシーレコードです。_dmarc.yourdomain.comに置く1つのTXTレコードで、v=DMARC1で始まります。追加はMailchimpのフローでも案内されます。まずv=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comから始めてください。p=noneは監視のみのため、Mailchimpのメールが認証に成功していることを確認している間、配信には影響しません。ポリシーを引き上げる前に慎重になるべき、Mailchimp特有の理由があります。MailchimpではSPFのアライメントが一致することはないため、DMARCの成功を支えるのはDKIMだけです。実際のメールのShow-originalのヘッダーと集計レポート(rua)の両方で、Mailchimpのメールが、アライメントの一致したDKIMで成功していることを確認するまで、p=quarantineやp=rejectには移行しないでください。1~2週間レポートを確認してから、p=quarantine、最終的にp=rejectへと段階的に引き上げます。送信者がいくつあっても、_dmarcレコードはドメイン全体で1つだけにし、Mailchimp用に2つ目を追加しないでください。
正しく設定できたか確認する
Mailchimpの「Authenticated」バッジだけで判断せず、実際のメールで確認してください。認証済みドメインのアドレスから自分宛てにテストキャンペーン(またはプレビュー)を送り、Gmailで開いて⋮ → Show originalを選びます。DKIM: PASS(signed-by: yourdomain.com)、DMARC: PASSと表示されていれば成功です。ただし、SPFは「pass」と表示されるものの、「mailed-by」はmcsv.net / mailchimpappのドメインになり、アライメントは一致しません。これはMailchimpでは正常な動作で、DKIMのアライメントが一致するためDMARCには成功します。次に、Qualisendのドメイン診断でドメインをチェックし、2つのCNAMEレコードとDMARCレコードが解決されることを確認します。集計レポートが届き始めたら、DMARCレポート解析にレポートをドロップします。Mailchimpは、DKIMのアライメントが一致した、成功している送信元として表示されるはずです。
よくある注意点
- DNS設定
MailchimpではSPFのアライメントは一致しませんが、これは仕様です。MailchimpはReturn-Path(mcsv.netのバウンス用ドメイン)を自身で保持するため、SPFのチェック先は自社ではなくMailchimpです。SPFのアライメントを追い求めたり、SPFでDMARCに成功することを期待してinclude:servers.mcsv.netを追加したりしないでください。DMARCはDKIMのアライメントだけで成功します。現行のCNAMEフローでは、SPFの変更は一切求められません。
- DNS設定
確認と認証は別の手順です。確認はメールで届くコードでドメインの所有を証明するもので(そのドメインのFromアドレスも使えるようになります)、認証は、DKIM用の2つのCNAMEレコードとDMARCレコードの追加を指します。必ず確認を先に行ってください。コードとリンクの有効期限は7日間です。
- DNS設定
無料の公開メールアドレスをFromアドレスにしたキャンペーンは、もう送信できません。YahooとAOLはp=rejectを公開しており、GmailとYahooの大量送信者向けルールは、第三者がそのユーザーの名義で送信することを禁じています。そのためgmail.com、yahoo.com、またはaol.comを「From」にしたキャンペーンは、そのドメインとDKIMのアライメントが一致せず、DMARCに失敗します。Mailchimpは現在、こうしたFromアドレスを完全にブロックしています。確認と認証を済ませた自社ドメインから送信してください。
- DNS設定
Cloudflareのプロキシは認証を妨げます。両方のCNAMEレコードを「DNS only」(グレーのクラウド)に設定してください。プロキシが有効なオレンジのクラウドのCNAMEレコードはmcsv.netに解決されず、Mailchimpのチェックに失敗します。
- DNS設定
ホスト欄の重複:多くのレジストラはドメインを自動で付加するため、k2._domainkey.yourdomain.comと入力すると、k2._domainkey.yourdomain.com.yourdomain.comになります。管理画面がドメインを付加する場合は、ラベルだけ(k2._domainkey / k3._domainkey)を入力してください。
- DNS設定
新旧のセレクター:従来のMailchimpアカウントはk1._domainkey → dkim.mcsv.netのCNAMEレコードを1つ使っていましたが、現在の認証ではk2/k3の組を使います。アカウントの画面に表示されたものを追加し、チュートリアルの値と混ぜないでください。
- 適用範囲
サブドメインは個別に認証します。mail.yourdomain.comから送信する場合は、そのサブドメインを単独で確認して認証してください。ルートドメインのレコードは適用されません。
- 認証失敗の原因
SPFレコードとDMARCレコードは1つずつにします。すでにGoogle WorkspaceやMicrosoft 365で送信している場合は、2つ目のSPFのTXTレコードや_dmarcレコードを公開しないでください。どちらも2つあると、それ自体が失敗の原因になります(SPFのPermError、無効なDMARC)。
SPFレコードを作成
Mailchimpでは、ルートドメインにSPFのinclude:を追加する必要はありません。作成ツールを使って他の送信元用のクリーンなレコードを1つ組み立て、1行に収めてください。
送信元
メールの送信に使っているサービスを検索して、それぞれチェックを入れてください。
上の検索欄で利用中のメールサービスを検索するか、してください。
このドメイン自身のサーバー
ドメインが(上記のサービスを経由せず)直接メールを送信する場合は、ドメイン自体を許可します。
その他の送信元・IP
リストにないもの(別のサービスのSPFホストや特定のIPアドレス)を追加します。
接頭辞のinclude:は自動で付加されます。サービスのドキュメントに記載されているホスト名を入力してください。
その他すべての送信元へのポリシー
上記に記載されていないサーバーからのメールを、受信側がどう処理すべきかを指定します(allメカニズム)。
送信元がまだないため、すべてのメッセージに~allポリシーが適用されます。ステップ1で利用中のサービスを追加してください。
- ルートドメインにTXTレコードとして公開します。ホストは@(ドメインそのもの)、値は上記の文字列全体です。
- SPFレコードは1つのドメインにつき1つだけにします。すべての送信元をこの1行にまとめてください。v=spf1で始まるTXTレコードが2つあると、両方とも無効になります。
- DNSルックアップは10回以内に収めてください。include:、a、mxはそれぞれ1回とカウントされ、includeは内部でさらにルックアップを発生させることがあります。ip4:とip6:はカウントされません。
送信ドメイン認証の設定が済んだら、次は検証済みのクリーンなリストへの配信です。
リストを検証MailchimpのSPFに関するよくある質問
関連記事
マーケティング・ESPの他のサービス
すべてのSPFガイド公開したら、ドメイン診断ですべてのレコードが正しく解決されることを確認し、DMARCレポート解析で自社ドメインを名乗って送信している送信元を把握します。作成ツールではすべての送信元を確認できます。ただし、認証は到達率対策の半分にすぎません。送信IPやドメインがブラックリストに掲載されていると、SPFの設定がどれほど適切でも迷惑メールに振り分けられます。そのため、ブラックリスト監視で掲載状況を確認しておくことをおすすめします。
認証の次は、リストをクリーンに保つ
SPF、DKIM、DMARCに成功すれば受信トレイに届き、クリーンなリストならその状態を維持できます。お手持ちのリストも検証してクリーニングできます。100クレジット無料、クレジットカード登録不要で始められます。