DMARCとは?SPFとの違いと設定方法を初心者向けにわかりやすく解説

メール設定を確認したときに「DMARCが設定されていません」「Action Recommended」と表示されて、何をすればよいのか迷ったことはありませんか。

DMARCは、メールのなりすまし対策に使われる重要な設定です。特に、独自ドメインでメールを送信している場合、SPFだけでなくDMARCも設定しておくことで、メールの信頼性を高めることができます。

この記事では、DMARCとは何か、SPFやDKIMとの違い、DMARCを設定しない場合のリスク、DNSに追加する具体的な設定例まで、初心者向けにわかりやすく解説します。

DMARCとは?

DMARCとは、独自ドメインを使ったなりすましメールを防ぐための仕組みです。

正式には「Domain-based Message Authentication, Reporting and Conformance」と呼ばれます。

簡単に言うと、DMARCは次のような設定です。

このドメインを使った怪しいメールが届いた場合、受信側のメールサーバーでどのように扱ってください

というルールをDNSに登録する仕組みです。

たとえば、あなたのドメインが「example.com」だとします。

第三者が勝手に「info@example.com」を名乗って迷惑メールを送った場合、受信側のメールサーバーはDMARCの設定を確認し、

  • そのメールを受け取るのか
  • 迷惑メール扱いにするのか
  • 拒否するのか

を判断できます。

つまりDMARCは、ドメインを守るためのメールセキュリティ設定です。

DMARCが必要な理由

DMARCが必要な理由は、メールのなりすましを防ぐためです。

独自ドメインのメールアドレスは、会社やサービスの信用に直結します。

たとえば、以下のようなメールが勝手に送られると、ドメインの信頼性が下がってしまいます。

  • 請求書を装った偽メール
  • ログイン情報を盗むフィッシングメール
  • 会社名を使った迷惑メール
  • 問い合わせ先を偽装した詐欺メール

DMARCを設定しておくと、このような不正メールを受信側で判定しやすくなります。

また、GmailやYahooメールなどの大手メールサービスでは、送信元ドメインの認証設定を重視する流れが強くなっています。

そのため、DMARCは単なるセキュリティ対策ではなく、メールを正常に届けるための基本設定とも言えます。

SPF・DKIM・DMARCの違い

メール認証には、主にSPF、DKIM、DMARCの3つがあります。

それぞれの役割は違います。

種類役割
SPFこのドメインからメールを送ってよいサーバーを指定する
DKIMメールが改ざんされていないかを確認する
DMARCSPFやDKIMの結果をもとに、不正メールをどう扱うか決める

SPFは、「このサーバーから送信されたメールなら正しい」と判断するための設定です。

DKIMは、メールに電子署名を付けて、途中で内容が変更されていないかを確認する仕組みです。

DMARCは、SPFやDKIMの認証結果をもとに、

認証に失敗したメールをどう処理するか

を決める設定です。

つまり、SPFとDKIMが「確認する仕組み」で、DMARCは「確認に失敗したときの対応ルール」と考えるとわかりやすいです。

DMARC未設定だとどうなる?

DMARCが未設定でも、すぐにメールが送れなくなるとは限りません。

しかし、未設定のままだと以下のようなリスクがあります。

リスク内容
なりすまし対策が弱い第三者がドメインを装ってメールを送る可能性がある
メールの信頼性が下がる受信側で正規メールか判断しにくくなる
迷惑メール判定されやすいメールが迷惑メールフォルダに入りやすくなる可能性がある
ドメインの評判が下がる不正利用されると送信ドメインの評価に影響する可能性がある

特に、お問い合わせフォーム、会員登録メール、予約通知、請求書メールなどを送っているサイトでは、DMARCを設定しておくことをおすすめします。

ドメインチェックで「DMARC未設定」と表示される意味

メール設定のチェックツールで、次のように表示されることがあります。

Action Recommended: It doesn't look like DMARC has been set up on your domain.

これは、

「あなたのドメインにDMARCが設定されていないようです。設定をおすすめします。」

という意味です。

エラーではなく、改善推奨の警告です。

SPFが成功していても、DMARCが未設定の場合はこのように表示されることがあります。

つまり、

SPFは正しく設定されている
しかしDMARCのルールはまだDNSに登録されていない

という状態です。

DMARCの基本的な設定例

初心者が最初に設定するなら、まずは監視モードから始めるのがおすすめです。

DNSに以下のTXTレコードを追加します。

  • 種類:TXT
  • 名前:_dmarc
  • 値:v=DMARC1; p=none; rua=mailto:postmaster@example.com

example.com の部分は、自分のドメインに置き換えてください。

たとえば、ドメインが tempjp.net の場合は以下のようになります。

  • 種類:TXT
  • 名前:_dmarc
  • 値:v=DMARC1; p=none; rua=mailto:postmaster@tempjp.net

DMARCレコードの意味

DMARCレコードは、いくつかの要素で構成されています。

設定意味
v=DMARC1DMARCを使う宣言
p=none認証に失敗しても拒否せず、まずは監視する
rua=mailto:〜DMARCレポートの送信先

最初は「p=none」で問題ありません。

p=noneは、メールを拒否せずに状況を確認するための設定です。

いきなり厳しい設定にすると、正規のメールまで届かなくなる可能性があります。そのため、最初は監視モードで運用し、問題がなければ段階的に強化していくのが安全です。

DMARCのポリシーは3種類ある

DMARCには、主に3つのポリシーがあります。

ポリシー内容
p=none何もしない。まずは監視する
p=quarantine怪しいメールを迷惑メール扱いにする
p=reject怪しいメールを拒否する

初心者は、まず「p=none」から始めます。

その後、メール送信に問題がないことを確認できたら「p=quarantine」、さらに厳しくする場合は「p=reject」に変更します。

最初から p=reject にしない方がよい理由

DMARCは、設定を間違えると正規のメールまで届かなくなる可能性があります。

たとえば、以下のようなケースです。

  • WordPressから送信するメール
  • お問い合わせフォームの自動返信メール
  • 外部メール配信サービスから送るメール
  • 予約システムや請求システムから送るメール

これらの送信元がSPFやDKIMと正しく連携していない場合、DMARCで不正メールと判断される可能性があります。

その状態で「p=reject」にすると、本来届くべきメールまで拒否されることがあります。

そのため、最初は必ず「p=none」で設定し、問題がないか確認することが大切です。

DNSにDMARCを追加する方法

DMARCは、ドメインのDNS設定に追加します。

基本的な流れは以下です。

  • ドメインを管理しているサービスにログインする
  • DNS設定画面を開く
  • TXTレコードを追加する
  • ホスト名に「_dmarc」を入力する
  • 値にDMARCレコードを入力する
  • 保存する
  • 反映されるまで待つ

DNSの反映には、数分から数時間かかる場合があります。

設定直後にチェックしても反映されていないことがあるため、少し時間を置いてから再確認しましょう。

XserverでDMARCを設定する場合

Xserverでドメインを管理している場合は、サーバーパネルからDNSレコードを追加します。

設定例は以下です。

項目入力内容
ホスト名_dmarc
種別TXT
内容v=DMARC1; p=none; rua=mailto:postmaster@example.com
優先度空欄または指定なし

example.com の部分は、自分のドメインに変更してください。

たとえば、tempjp.netで設定する場合は以下です。

  • ホスト名:_dmarc
  • 種別:TXT
  • 内容:v=DMARC1; p=none; rua=mailto:postmaster@tempjp.net

保存後、DNSが反映されればDMARCチェックで警告が解消される可能性があります。

DMARC設定後に確認すること

DMARCを設定した後は、以下を確認しましょう。

  • メールが正常に送信できるか
  • お問い合わせフォームの自動返信が届くか
  • 管理者宛メールが届くか
  • GmailやYahooメールに送って迷惑メールに入らないか
  • DMARCチェックツールで正常判定されるか

特に、WordPressの問い合わせフォームを使っている場合は、必ずテスト送信を行ってください。

設定自体は正しくても、送信元メールアドレスやSMTP設定との組み合わせによって、メールが届きにくくなることがあります。

DMARCとWordPressのお問い合わせフォーム

WordPressでContact Form 7などの問い合わせフォームを使っている場合、送信元メールアドレスに注意が必要です。

よくある間違いは、フォーム入力者のメールアドレスをそのまま送信元にしてしまうことです。

たとえば、訪問者がGmailアドレスを入力した場合、そのGmailアドレスを送信元として自分のサーバーから送る形になると、なりすましと判断されやすくなります。

正しくは、送信元には自分のドメインのメールアドレスを使います。

例:

  • 送信元:info@example.com
  • 返信先:問い合わせした人のメールアドレス

この形にすると、SPFやDMARCの認証と整合しやすくなります。

DMARC設定でよくある失敗

DMARC設定でよくある失敗は以下です。

失敗例内容
ホスト名を間違える_dmarc.example.com と入力すべき画面で _dmarc だけでよい場合がある
値を間違えるセミコロンやスペースの位置が不正
メールアドレスを間違えるruaの送信先が存在しない
いきなりrejectにする正常なメールまで拒否される可能性がある
SPFだけで安心するDMARCがないと処理方針を指定できない

特に、DNS設定画面によって「ホスト名」の入力方法が違う点に注意が必要です。

あるサービスでは「_dmarc」と入力しますが、別のサービスでは「_dmarc.example.com」と入力する場合があります。

設定画面の仕様に合わせて入力しましょう。

DMARCを設定すると迷惑メール対策になるのか

DMARCを設定すると、迷惑メール対策として有効です。

ただし、DMARCを設定しただけですべての迷惑メールがなくなるわけではありません。

DMARCは主に、

  • 自分のドメインを使ったなりすましメールを防ぐ
  • 受信側に正しい判定ルールを伝える
  • メール送信元としての信頼性を高める

ための仕組みです。

そのため、メール到達率を改善したい場合は、DMARCだけでなく、SPF、DKIM、SMTP設定、送信元アドレス、メール本文の内容もあわせて確認する必要があります。

初心者におすすめのDMARC設定

初心者におすすめの設定は、以下です。

  • 種類:TXT
  • 名前:_dmarc
  • 値:v=DMARC1; p=none; rua=mailto:postmaster@example.com

この設定なら、メールを拒否せずにDMARCを導入できます。

まずはこの状態で運用し、メール送信に問題がないか確認します。

問題がなければ、次の段階として以下のように強化できます。

v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com

さらに厳格にする場合は以下です。

v=DMARC1; p=reject; rua=mailto:postmaster@example.com

ただし、p=rejectにする前には、正規のメールがすべてSPFまたはDKIMで正しく認証されているか確認することが重要です。

DMARC設定はSEOにも関係あるのか

DMARCそのものが、直接的に検索順位を上げるわけではありません。

しかし、Webサイト運営ではメールの信頼性も重要です。

たとえば、以下のような場面で影響します。

  • お問い合わせフォームの返信メール
  • 会員登録の確認メール
  • 資料請求後の自動返信メール
  • 予約完了メール
  • 購入完了メール

これらのメールが迷惑メールに入ると、ユーザーとの接点を失ってしまいます。

つまりDMARCは、SEOの直接要因ではありませんが、サイト運営やコンバージョン改善の面では重要な設定です。

Webサイトの信頼性を高めるためにも、独自ドメインを使っているなら設定しておく価値があります。

まとめ

DMARCとは、独自ドメインを使ったなりすましメールを防ぐためのメール認証設定です。

  • SPFは、メールを送信してよいサーバーを指定する設定です。
  • DKIMは、メールが改ざんされていないかを確認する設定です。
  • DMARCは、SPFやDKIMの結果をもとに、不正なメールをどう扱うか決める設定です。

ドメインチェックで「DMARCが未設定」と表示された場合は、DNSにDMARCレコードを追加することで改善できます。

初心者は、まず以下の設定から始めるのがおすすめです。

種類:TXT
名前:_dmarc
値:v=DMARC1; p=none; rua=mailto:postmaster@example.com

最初は「p=none」で監視し、問題がなければ「p=quarantine」「p=reject」と段階的に強化していきます。

DMARCを設定することで、なりすまし対策、メールの信頼性向上、迷惑メール判定の軽減につながります。

独自ドメインでメールを使っている場合は、SPFだけでなくDMARCまで設定しておくことが大切です。