ガイド / SPFとは

SPFとは?メール認証の仕組みと設定・確認方法をやさしく解説

なりすまし対策の土台となる「SPF」を、仕組み・レコードの書き方・つまずきやすい落とし穴まで、はじめての方向けに整理します。

最終更新: 2026年6月

SPFとは

SPF(Sender Policy Framework)は、「このドメインのメールは、これらのサーバーから送られるはずだ」という送信元の許可リストを、あらかじめDNSに公開しておく仕組みです。受信側のメールサーバーは、届いたメールの実際の送信元が、その許可リストに含まれているかを照合します。含まれていれば「正規の送信元から来た」と判断でき、含まれていなければ、なりすましの疑いがあると分かります。

SPFは、SPF・DKIM・DMARC というなりすまし対策の3点セットのうち、最も基本的な土台にあたります。

SPFはどう動くのか

仕組みはシンプルです。あるドメインを名乗るメールが届くと、受信側は、そのドメインのDNSに公開されたSPFレコード(後述)を参照します。そして、実際にメールを送ってきたサーバーのIPアドレスが、レコードに記載された許可リストに含まれるかを確認します。含まれていれば「pass(合格)」、含まれていなければ「fail(不合格)」です。

ここで一点、後で重要になる注意があります。SPFが照合するのは、技術的な送信元(エンベロープFrom、Return-Path)のドメインであって、メールソフトの差出人欄に表示されるアドレス(ヘッダーFrom)とは別物です。この違いが、後述する「SPFだけでは足りない理由」につながります。

SPFレコードの書き方

SPFは、ドメインのDNSに1本のTXTレコードとして公開します。必ず v=spf1 で始まり、許可する送信元を並べ、最後に「リストにないものをどう扱うか」を指定します。

たとえば、Google Workspace でメールを送るドメインなら、次のような形になります。

v=spf1 include:_spf.google.com -all

主な構成要素は次のとおりです。include: は他のサービスの許可リストを取り込むもので、メール配信サービスやグループウェアを使う場合に多用します。amx はそのドメインのAレコード・MXレコードのサーバーを許可、ip4: / ip6: は特定のIPを直接許可します。そして末尾の all が、リストに該当しない送信元の扱いを決めます。

-all~all の違い

末尾の記号で挙動が変わります。-all(ハードフェイル)は「リストにない送信元は不正」と明確に宣言します。~all(ソフトフェイル)は「おそらく不正だが拒否までは求めない」という弱い宣言です。なりすまし対策を効かせたいなら -all が基本です。逆に +all は「どこからでも許可」を意味し、SPFを無意味にするので使ってはいけません。

つまずきやすい落とし穴

SPFは一見シンプルですが、運用で事故が起きやすいポイントがいくつかあります。

10ルックアップ制限

最も多い事故がこれです。SPFは1回の検証で参照できるDNSの回数が合計10回までと決められており(RFC 7208)、これを超えるとSPF全体が無効(permerror)になります。送信サービスを表す include は、内部でさらに複数回のDNS参照を伴うことが多く、メール配信ツールやCRMなどを数個追加しただけで、気づかないうちに上限に達します。「設定したはずなのに、あるツールを1つ足したらメールが届かなくなった」という形で表面化するのが典型です。

10ルックアップ超過は、SPFレコードを見ただけでは気づきにくいのが厄介な点です。送信サービスを追加・変更したら、その都度ルックアップ数が上限内に収まっているか確認する習慣をつけると安全です。

複数のSPFレコードは無効

1つのドメインに公開できるSPFレコードは1本だけです。複数のサービスを設定するうちに、SPFのTXTレコードを2本作ってしまうと、SPF全体が無効になります。複数のサービスを許可したいときは、1本のレコードの中に include を並べます。

SPFは転送で壊れる

メールが転送されると、送信元サーバーが転送サーバーに変わるため、元のドメインのSPFには含まれず、SPFはfailします。これはSPFの仕組み上避けられない弱点で、SPF単独ではなりすまし対策として不十分である、という大きな理由のひとつです。

SPFだけでは足りない理由

前述のとおり、SPFが照合するのは技術的な送信元(エンベロープFrom)で、利用者の目に見える差出人欄(ヘッダーFrom)ではありません。なりすましメールは、まさにこのヘッダーFromを偽装して「正規の会社からのメール」に見せかけます。SPFはヘッダーFromを直接は守らないため、SPFがpassしていても、見た目の差出人がなりすましということが起こりえます。

この穴を塞ぐのがDMARCです。DMARCは、SPFやDKIMの結果と、利用者に見えるヘッダーFromのドメインが一致しているか(整合性、アライメント)まで確認します。だからこそ、SPF・DKIM・DMARC は3点セットで初めてなりすまし対策として機能します。SPFはその不可欠な土台、という位置づけです。

SPFの状態を確認するには

まずやるべきは、自社ドメインのSPFが正しく設定されているかを知ることです。そもそもSPFレコードがあるか、-all で終わっているか、そして10ルックアップの上限を超えていないか。これらを把握すれば、次に直すべき点が見えてきます。

あなたのドメインのSPFをチェック

ドメインを入力するだけで、SPF・DMARC・DKIM・MX の状態を無料で確認できます。SPFの10ルックアップ超過も検出。登録不要。

無料でチェックする