SPFメール認証Web 担当者トラブルシューティング

Received-SPF ヘッダの見方・判定値早見表

ドメイン番人5 分で読めます
目次

この記事でわかること

  • Received-SPF: の後ろにある pass fail softfail neutral none などが何を意味するか
  • このヘッダが「いつ・どのサーバで」付与されるのか
  • softfail~all)と fail-all)が受信結果としてどう違うか
  • Authentication-Results ヘッダとの役割の違い

Received-SPF ヘッダとは

Received-SPF は、受信したメールのヘッダ(メール本文の前に付く配送記録)に書かれる行で、「このメールの送信元 IP は、差出人ドメインが許可した送信元だったか」を受信側サーバが判定した結果を記録したものです。

具体的には次のような 1 行です。

Received-SPF: pass (google.com: domain of [email protected]
  designates 203.0.113.10 as permitted sender)
  client-ip=203.0.113.10;

ここで読むべきは先頭の判定値(この例では pass)です。SPF(Sender Policy Framework=差出人ドメインが「正規の送信サーバはこれです」と DNS に公開する仕組み)の照合結果が、この一語に集約されています。

SPF の基礎そのものは SPF Fail と SoftFail の違いDMARC とは何か で扱っているため、本記事は 受信側で実際に届いたヘッダをどう読むか に絞ります。

ヘッダはどこで付与されるのか

Received-SPF送信側ではなく、メールを受け取った側のサーバ(受信 MTA)が付けます。Gmail なら Google の受信サーバ、Microsoft 365 なら Microsoft の受信サーバが、自分のところに届いた瞬間に SPF 照合を行い、その結果をヘッダとして書き足します。

つまりこのヘッダは「送信元が正しいと主張した値」ではなく、「受信側が DNS を引いて検証した結果」です。だからこそ、なりすましの判断材料として信頼できます。

逆に言うと、送信元が自分でヘッダを偽装しても、最終的に受信したサーバが上書きで本物の判定を追記します。最も外側(一番上)の Received-SPF を読むのが原則です。

Received-SPF ヘッダが付与される流れ

判定値の意味(早見表)

Received-SPF の判定値は RFC 7208 で定義された 7 種類が基本です。それぞれの意味と、受信側で一般的に取られる扱いを整理します。

Received-SPF 判定値の意味と扱い

判定値 意味 一般的な扱い
pass 送信元 IP は差出人ドメインが許可した正規サーバ 正常。認証成功
fail 許可リストに 無い IP(ドメインが -all で明確に拒否) なりすまし疑い大。拒否 / 迷惑メール行き
softfail 許可リストに無いが、拒否までは要請しない(~all 迷惑メールスコア加点。配送は通ることが多い
neutral ドメインが明示的に「判定しない」と表明(?all 判定材料にならない。素通り
none 差出人ドメインに SPF レコードが存在しない 照合不能。判定材料なし
permerror SPF レコードの記述に恒久的な誤り(例: include 10 個超過) 設定ミス。送信側の修正が必要
temperror DNS 一時障害などで照合できなかった 一時的。再送で解消することがある

permerror が出る代表的な原因が SPF の DNS lookup 10 回上限超過です。詳細と対処は SPF Fail と SoftFail の違い を参照してください。

softfail と fail の違いを読み分ける

実務で最も判断に迷うのが softfailfail の差です。どちらも「許可リストに無い IP からのメール」ですが、差出人ドメイン側の意思表示が違います

  • fail: ドメインが SPF レコード末尾を -all にしている。「許可外は拒否してよい」という強い表明
  • softfail: ドメインが末尾を ~all にしている。「許可外だが疑わしい程度の扱いにとどめてほしい」という弱い表明

つまり判定値の差は 受信側の気分ではなく、送信ドメインが公開した -all / ~all の差 をそのまま反映しています。自社から送ったメールが相手先で softfail になっていたら、SPF に正規送信元が漏れなく登録されているか、末尾修飾子が適切かを見直すサインです。

neutralnone は「判定不能」であり、安全を意味しません。これらが頻発するドメインはなりすましに弱い状態です。

Authentication-Results ヘッダとの違い

近年のメールには Received-SPF とは別に Authentication-Results ヘッダも付きます。両者の関係は次の通りです。

  • Received-SPF: SPF 単体の照合結果だけを記録する専用ヘッダ
  • Authentication-Results: SPF・DKIM・DMARC を まとめて 記録する総合ヘッダ(spf=pass dkim=pass dmarc=pass のように並ぶ)

Authentication-Resultsspf= の値は、基本的に Received-SPF の判定値と一致します。最終的なメール採否は SPF 単体ではなく DMARC の総合判定で決まるため、なりすまし対策の文脈では Authentication-Resultsdmarc= も合わせて読みます。ヘッダ全体の読み方は メールヘッダの読み方ガイド で詳しく解説しています。

よくある質問

Q. Received-SPF が none なのは問題ですか。 差出人ドメインに SPF レコードが無い状態です。自社ドメインで none が出ているなら、なりすましに対して無防備なので SPF の設定を推奨します。受信側としては「判定材料が無い」だけで、即なりすましとは限りません。

Q. softfail のメールは届かないのですか。 多くの受信サーバは softfail でも配送自体は通し、迷惑メールスコアを加点する程度の扱いをします。ただし DMARC が p=reject で運用されている場合、softfail でも拒否されることがあります。

Q. ヘッダが複数の Received-SPF を含むことがあります。どれを読めばよいですか。 中継経路ごとに付くことがあります。最終的に自分の受信サーバが付けた、最も上(外側)の行を読むのが原則です。

Q. 自社から送ったメールが相手先で permerror になります。 SPF レコードの記述ミスが原因です。include の参照が 10 回を超えているケースが代表的です。SPF Fail と SoftFail の違い の lookup 上限の項を確認してください。

まずは現状を把握しましょう

自社ドメインから送ったメールが受信側で pass になっているか、softfailnone になっていないかは、無料のドメイン診断で SPF レコードの状態を確認できます。判断に迷う場合はお問い合わせからご相談ください。専門家がわかりやすくサポートいたします。

次の一歩は無料診断から。