DMARC レコードの書き方
DMARC は、自分のドメインをかたった偽メールを受信側にどう扱わせるか (そのまま受信 / 迷惑メール扱い / 拒否) を宣言するレコードです。なりすましを防ぎ、認証に失敗したメールの報告を受け取るために設定します。
名前を _dmarc にした TXT に、ポリシーとレポート先を書きます。最初は p=none です。
| 名前 | 種別 | 値 | TTL |
|---|---|---|---|
| _dmarc | TXT | v=DMARC1; p=none; rua=mailto:dmarc@example.jp | 3600 |
SPF か DKIM を先に設定しておきます。
3 段階で強める
- p=none観測だけ。届くレポートで、正規のメールが合格しているかを 2〜4 週間確かめます。
- p=quarantine失敗したメールを迷惑メール扱いに。pct で一部から試せます。
- p=reject失敗したメールを受け取らせません。なりすましを止める最終形です。
こう書く
| 段階 | 値 (名前は _dmarc) |
|---|---|
| 観測を始める | v=DMARC1; p=none; rua=mailto:dmarc@example.jp |
| 4 分の 1 だけ隔離する | v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc@example.jp |
| すべて隔離する | v=DMARC1; p=quarantine; rua=mailto:dmarc@example.jp |
| 拒否する | v=DMARC1; p=reject; rua=mailto:dmarc@example.jp |
| メールを送らないドメイン | v=DMARC1; p=reject |
手順の詳細: Google Workspace / Microsoft 365
各タグの意味
| タグ | 意味 | 省略時 |
|---|---|---|
| v=DMARC1 | DMARC の始まり。必ず先頭 | 必須 |
| p= | 失敗したメールの扱い。none / quarantine / reject | 必須 |
| rua=mailto: | 集計レポートの送信先。1 日 1 回ほど XML が届く | 届かない |
| ruf=mailto: | 失敗 1 通ごとのレポートの送信先。送らない受信側も多い | 届かない |
| pct= | ポリシーを適用する割合 (0〜100)。残りは 1 段弱い扱い | 100 |
| sp= | サブドメインのポリシー | p と同じ |
| adkim= | DKIM の署名ドメインと From の一致の厳しさ。r (緩い) / s (厳密) | r |
| aspf= | SPF のドメインと From の一致の厳しさ。r (緩い) / s (厳密) | r |
SPF か DKIM のどちらかが、From のドメインと一致して合格すれば DMARC は合格です (RFC 7489)。
よくある間違い
- ✕名前を @ (空欄) にするDMARC の名前は
_dmarcです。ドメイン直下の TXT に書いても読まれません。 - ✕p=none のまま放置するnone は観測だけで、なりすましは止まりません。レポートで確認できたら quarantine に進めます。
- ✕別ドメインの rua に許可レコードがないレポート先が別のドメインなら、そのドメインに
example.jp._report._dmarcの TXT (v=DMARC1) が必要です。無いとレポートが届きません。
作る・確かめる
根拠: RFC 7489 (DMARC)
よくある質問
DMARC は必要ですか?
Gmail などの大手は 2024 年以降、大量に送る送信者に DMARC を求めています。少量の送信でも、なりすまし対策として設定しておくのが標準です。
レポートの XML が読めません。
送信元の IP ごとに、SPF・DKIM の合否と件数が並んでいます。知らない IP から大量に失敗しているものがなりすまし、自社の送信サービスで失敗しているものが設定漏れです。