SPFレコード

SPFとは、電子メールの送信元ドメインを認証する方式のひとつで、SMTPの拡張仕様であり、RFC 4408として定義されています。

携帯キャリアがこの仕様を導入していますので、「携帯電話にメールが送信できなくなってしまった」と問い合わせを受けないように、事前に管理しているドメインのDNSレコードにTXTレコードを追加しておきましょう。

送信側DNSの設定例

mail IN A 192.168.1.10
IN TXT “v=spf1 ip4:192.168.1.10 -all”

レコード内容 説明
v=spf1 SPF1情報であることを示すヘッダ。
ip4:192.168.1.10 送信元のIPアドレスと、ipv4形式のアドレスとを比較するというルール。このルールの前には、アクション ”+”が省略されている
-all これより前のルールに一致しない場合には、メールを拒否するというルール。

※ 各キャリアのアナウンスページ。
NTT DoCoMo 送信ドメイン認証(Sender “ID ” /SPF)について
KDDI au: 送信ドメイン認証SPFレコードについて
SoftBank SPF送信ドメイン認証について

 

SPFの検証ルール

指定方法 説明
a:host hostにホスト名を指定。送信者のIPアドレスと指定した名称のAレコードに設定されたIPアドレスとを比較。
mx:mxhost 送信者のIPアドレスとmxhostのMXレコードに設定されたホストのIPアドレスとを比較。
ptr:domain 送信者のIPアドレスの逆引きと、domainに設定されたDNS名を比較。
ip4:ipv4addr ipv4addrに設定されたIPv4形式のIPアドレスと、送信者のIPアドレスとを比較。
ip6:ipv6addr ipv6addrに設定されたIPv6形式のIPアドレスと、送信者のIPアドレスとを比較。
exists:macro macroに指定されたマクロに従って値を置き換えたホスト名でDNSを参照し得られたIPアドレスと、送信者のIPアドレスとを比較。
include:domain domainに指定されたドメインのSPFレコードを参照して、それを認証に利用。
all 全ての条件に一致する。通常、SPFレコードの最後に指定し、デフォルトのルールを規定する。

 

SPFのアクション

フラグ 説明
+ PASS、ルールに一致した場合にメールを受信。
FAIL、ルールに一致した場合にメールを拒否。
~ SoftFAIL、ルールに一致していない場合でも受信。SPF情報は公開されているが、この情報では検証が失敗する場合があるときに使用。
? Neutral、SPF情報が公開されていないものとして処理を行う。この場合、検証は失敗するが、受信処理を行う。
指定なし PASS、+が指定されているものとして処理。

関連記事一覧

  1. この記事へのコメントはありません。