SPFレコードチェッカー

ドメインを入力すると、チェッカーがそのDNS TXTレコードを検索し、v=spf1 で始まるものを見つけて、各部分(include:amxip4:ip6:all 修飾子、redirect=)にわかりやすいラベルを付けて表示します。見つかったすべてのTXTレコードも一覧表示します。公開されているレコードを読み取って説明するだけで、DNSを変更したりメールを送信したりはしません。

チェックの仕組み

  1. 1

    ドメインを入力

    チェッカーがドメインのTXTレコードを問い合わせ、`v=spf1` で始まるものを探します。

  2. 2

    レコードを分解

    各トークン(`ip4:`、`ip6:`、`include:`、`a`、`mx`、`all`、`redirect=`)に短いラベルを付けて表示します。

  3. 3

    すべてのTXTレコードを一覧表示

    SPFレコードだけでなく、ドメインが公開しているTXTレコードの全一覧を展開できます。

  4. 4

    レコードなしを通知

    ドメインにTXTレコードはあるが `v=spf1` で始まるものがない場合、SPFポリシーがないことを知らせます。

分解で表示される内容

部分 意味
v=spf1 バージョン識別子。必ず先頭に置く
ip4:x.x.x.x/y このIPv4アドレスまたはCIDRブロックを許可
ip6:... このIPv6アドレスまたはCIDRを許可
a ドメインのAレコードを許可
mx ドメインのMXホストを許可
include:spf.provider.com 別プロバイダーのSPFレコードを取り込む
redirect=other.com SPFポリシーを別ドメインに委ねる
all 末尾の総括ルール。修飾子付き

all の修飾子

  • +all、すべて許可(非推奨)
  • -all、ハードフェイル。記載外はすべて拒否
  • ~all、ソフトフェイル。受信するが疑わしいと印を付ける
  • ?all、中立。ポリシーなし

レコードの読み方

  • all 修飾子から確認する。 +all はどの送信者も通してしまいSPFを無効にします。多くのドメインは -all~all が望ましいです。
  • SPFレコードは1つだけ。 1ドメインにつき v=spf1 で始まるTXTレコードは1つだけにします。2つあると受信側はレコードを壊れているものとして扱います。
  • 実在の送信者にはそれぞれメカニズムが必要。 ヘルプデスクやニュースレターのサービスが自ドメインとして送信する場合、その include:(またはIP)をレコードに入れないと、そのメールはSPFに失敗します。

このツールが行わないこと

このチェッカーは公開されたSPFレコードを読み取って説明します。include: チェーンのフラット化は行わず、10回のDNSルックアップ上限のカウントもせず、レコードの書き換えや、DKIM・DMARCの確認も行いません。これらはメール認証の別々の要素です。SPFはIPで送信者を認可し、DKIMはメッセージに署名し、DMARCは両者を可視の From: アドレスに結び付け、失敗時に受信側がどうするかを指示します。

よくある質問

~all はソフトフェイルで、メールは受信されますが疑わしいと印が付きます。-all はハードフェイルで、レコードに記載のない送信者からのメールは拒否されます。レコードを整えている間は ~all から始め、正当な送信者がすべて記載されていると確信できたら -all に強化します。

いいえ。SPFレコードの検索と説明のみを行います。DNSルックアップのカウント、include: チェーンの追跡、DKIMやDMARCの確認はしません。これらは別々に実施すべき別のチェックです。

複数あるべきではありません。一部のDNSパネルでは v=spf1 で始まるTXTレコードを複数追加できてしまいます。すると受信側はドメインを設定ミス(PermError)として扱います。1つのレコードに統合してください。

いいえ。SPFはエンベロープ送信者(Return-Path / MAIL FROM)を確認し、可視のFrom:ヘッダーは確認しません。この隔たりがDMARCの存在理由です。DMARCはSPFを、人が実際に目にするFrom:アドレスと整合させます。

関連ツール

このツールは他の言語でも利用できます