Skip to content

SPF 構文

SPF レコードの形式は次のとおりです:

txt
v=spf1 [mechanisms] [qualifiers]

各メカニズムについては以下で説明します。

v=spf1

v=spf1 タグは、SPF レコードのバージョンとプロトコルを示します。SPF のバージョンは1つだけで、プロトコルは常に spf1 です。

メカニズム

メカニズムは、送信者のIPアドレスまたはホストをSPFポリシーと一致させる方法を定義するルールです。メカニズムにはいくつかの種類があります:

タグ説明
a送信者のIPアドレスをドメインのAまたはAAAAレコードと一致させます。
mx送信者のIPアドレスをドメインのMXレコードと一致させます。
ip4送信者のIPv4アドレスを特定の範囲と一致させます。
ip6送信者のIPv6アドレスを特定の範囲と一致させます。
include他のドメインのSPFポリシーを含めます。

修飾子

修飾子は、メカニズムと一致するかしないかに基づいて、受信者がメールをどのように処理するかを示すアクションです。修飾子には4つの種類があります:

タグ説明
+Pass、メールは受け入れられます(推奨されません)。
?Neutral、メールは受け入れも拒否もされません(推奨されません)。
-Fail、メールは拒否されます。
~Softfail、メールは受け入れられますが、疑わしいとマークされます。

適切なSPF修飾子の選択

SPF修飾子の選択は、ドメイン所有者の好みとリスク許容度に依存します。一般的に、重要または機密性の高いメールを送信するドメインには、Hard Fail (-) 修飾子を使用することが推奨されます。これにより、ドメイン所有者は、認可されたサーバーのみが自分の代わりにメールを送信できることを保証し、偽装されたメールが受信サーバーによって拒否されるようにします。ただし、ドメイン所有者は、SPFレコードが正確で最新であり、ウェブホスト、メールプロバイダー、サードパーティサービスなど、ドメインの正当なメール送信元をすべて含んでいることを確認する必要があります。そうしないと、SPFチェックに失敗した有効なメールを失うリスクがあります。

一方、Soft Fail (~) 修飾子は、ニュースレター、マーケティング、ソーシャルメディアなど、重要度や機密性の低いメールを送信するドメインにとって良い選択肢かもしれません。これにより、ドメイン所有者は認可されたサーバーの優先度を示しつつ、受信サーバーがメールをどのように処理するかを決定する柔軟性を持たせることができます。これにより、SPFチェックに失敗した有効なメールを失う可能性を減らすことができますが、SPFチェックを通過した偽装メールを受け取る可能性も増加します。

Neutral (?) および Allow all (+) 修飾子は、メールの偽装やフィッシング攻撃に対する保護を提供しないため、どのドメインにも推奨されません。これらは本質的にSPFメカニズムを無効にし、任意のサーバーがドメインの代わりにメールを送信できるようにします。これにより、ドメインの評判や配信可能性が損なわれ、ドメインのユーザーが悪意のあるメールにさらされる可能性があります。

シンプルなSPFレコードの例は次のとおりです:

txt
v=spf1 mx -all

これは、ドメインのMXレコードに対応するIPアドレスのみがドメインの代わりにメールを送信することを許可され、その他のIPアドレスは拒否されることを意味します。

関連トピック