MailData

2025年版 「No SPF record found」の修正方法

2025年版 「No SPF record found」の修正方法

2025年1月25日
著者: Maitham Al Lawati
翻訳: 永 香奈子

この記事はPowerDMARCのブログ記事 How to Fix “No SPF record found” in 2025 の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。


「No SPF Record Found」というエラーは、ドメインのDNS設定にSPFレコードが存在しないことを意味します。
これを修正するには、DNSにSPFレコードを公開する必要があります。
このブログをご覧になっているということは、おそらく以下のようなメッセージに遭遇されたのではないでしょうか?

これらのメッセージは異なる表現ですが、いずれも同じ意味を持っています。
つまり、ドメインがSPFメール認証標準で設定されていないことを示しています。

重要なポイント

  1. 「No SPF Record Found」エラーは、お使いのドメインのDNS設定にSPFレコードが存在しないことを示しています。
  2. この問題を解決するには、まずSPFレコードが存在しないことを確認し、正しい構文でレコードを作成してください。
  3. 一般的なSPFレコードの主要な構成要素には、バージョン、許可されたIPアドレス、ポリシーモードが含まれます。
  4. SPFレコードがないと、ドメインがメールのなりすましにさらされ、送信メールがスパムとして扱われる可能性があります。
  5. SPFレコードの正確性と機能性を確保するためには、生成および検証ツールを使用することが有効です。

なぜ「No SPF Record Found」エラーが表示されるのか?

SPFレコードが見つからない主な理由は2つあります。
1つ目で最も単純な理由は、実際にお使いのドメインにSPFレコードが存在しないことです。
2つ目は、無効または誤ったSPFレコードが原因で「No SPF Record Found」エラーが返される場合です。

「No SPF Record Found」エラーを修正する方法

煩わしい「No SPF Record Found」エラーを回避するには、以下の手順を実行してください。

ステップ 1: SPFレコードの欠落を確認する
最初のステップは、「No SPF Record Found」エラーが存在するか確認することです。
PowerDMARCに無料で登録し、SPFチェッカーツールを使用してDNSを調べてください。 SPFチェッカーツール この例では、ドメインがSPF検索で「No records found」と返されました。
ステップ 2: SPFレコードを作成する
次に、DNS TXTレコードを作成してドメイン用にSPFを構成します。
当社のポータルにある無料のSPFレコードジェネレーターを使用すると、正しい構文で即座にレコードを作成できます。 SPFレコードジェネレーター
ステップ 3: SPF構文フィールドを設定する
  • ドメインのMXとしてリストされたサーバがメールを送信できるようにするか選択
  • ドメインの現在のIPアドレスがこのドメインのメール送信を許可するか選択
  • ドメインからメールを送信する権限を持つIPアドレスを入力
  • ドメインのメールを配信または中継する可能性のある他のサーバホスト名やドメインを追加
  • SPFポリシーモードまたは受信サーバの厳密性レベルを選択(Fail: 非準拠のメールは拒否、Soft-fail: 非準拠のメールを受け取りマークを付ける、Neutral: メールはおそらく受け取られる)
  • 「Generate SPF Record」をクリックして、即座にレコードを作成
SPFの構文を生成する
ステップ 4: レコードをDNSに公開する
ドメインレジストラに連絡してDNS管理コンソールにアクセスします。
DNSレコードを編集してSPF用の新しいレコードを追加する必要があります。 DNSを公開する
ステップ 5: SPFの実装を確認する
最後に、同じSPFチェッカーツールを使用して、公開されたSPFレコードを調べて検証します。 SPFを検証する

「No valid SPF record found」/「No valid SPF record」のエラー

「No valid SPF record found」/「No valid SPF record」

「No SPF record found」エラーに類似したバリエーションとして、「No valid SPF record found」というエラーがあります。
このエラーは、DNSにSPFレコードが存在していても、そのレコードが有効でないことを意味します。
これは構文エラーや、冗長または無効なメカニズムが原因で発生する可能性があります。

この解決策には以下のようなものがあります。

SPFレコードが有効であるかを確認する方法

SPFレコードの有効性を確認するには、オンライン検証ツールを使用してDNSレコードを検索する必要があります。
PowerDMARCのSPFチェッカーツールと同様です。
「Valid」ステータスに緑色のチェックマークが表示されれば、SPF DNSレコードが有効であることを示します。

有効なSPFレコードを追加する方法

正しいSPFレコードを追加するには、手動で行うのではなく、PowerDMARCのような自動レコード生成ツールを使用します。
これにより、構文エラーの可能性を減らせます。
また、有効なレコードを設定する際には以下の点に注意してください。

SPFレコードを公開するだけで十分ですか?

答えは「いいえ」です。
SPFだけではブランドがなりすましから保護されることはありません。
ドメインの直接なりすまし、フィッシング攻撃、BEC(Business Email Compromise)に対して最適な保護を得るには、DKIMDMARCも構成する必要があります。

さらに、SPFにはDNSルックアップ10回までの制限があります。
この制限を超えると、SPFが無効になり、正当なメールでも認証に失敗します。
そのため、PowerDMARCのホスト型SPFソリューションを使用することで、10回のDNSルックアップ制限を超えないように管理でき、またメールサービスプロバイダによる変更についても常に最新の状態を維持することができます。

SPFレコードとは?

SPFレコードとは、ドメインのDNSに公開されるDNSのTXTレコードであり、認証されたIPアドレスと照合することでメッセージを認証します。
SPFは「Sender Policy Framework(送信者ポリシーフレームワーク)」の略で、メール認証プロトコルの一種です。
他の認証メカニズムと組み合わせて使用することで、攻撃者によるメールのなりすましを防止することができます。

SPFはDNSレコードを使用して、送信サーバがそのドメイン名からメールを送信する権限があるかどうかを検証します。
これは「経路ベース」の認証システムであり、つまりメールが送信元サーバから受信サーバへと届くまでの経路に関連しています。

なぜSPFを設定する必要があるのか?

「SPFによるメール認証が必要です」と言われたことがあるかもしれません。
しかし、実際にビジネスにとって本当に必要なのでしょうか?
そして、他に利点はあるのでしょうか?

この問いの重要性が理解されるのは、多くの場合、企業や中小企業が自社内で大量のメールを送受信するようになったときです。
SPFを導入することで、自分のドメイン名から送信されたメールが、自分によって許可されたものかどうかを検証できます。
SPFレコードが存在しない場合、あなたのドメインは以下のような方法で悪用される可能性があります。

  1. 攻撃者があなたになりすましてフィッシングメールを送信する
  2. 攻撃者があなたのドメインをより簡単に偽装できる
  3. あなたのドメインが大量のスパムメール送信に利用される
  4. あなたのメールがGmailやYahooの受信箱でブロックされたり、迷惑メールとしてマークされたりする

PowerDMARCの2024年版DMARC導入レポートでは、SPF設定が欠如しているドメインが全体の75%以上にのぼることが明らかになりました。
これにより、組織はメールを起点とした脅威に対してますます脆弱な状態に置かれています。

SPF構文の解説

正しい構文を使用したダミードメインのSPFレコードの例を見てみましょう。
例: v=spf1 ip4:29.337.148 include:domain.com -all

v=spf1
「v」フィールドは、SPFプロトコルのバージョンを指定します。
ip4/ip6
これは、有効なIPv4(32ビット)およびIPv6(128ビット)アドレスを指定し、それらがあなたのドメインの代わりにメールを送信することを許可されていることを示します。
include
これは、受信サーバが指定されたドメインのSPFレコードの値を含めなければならないことを示します。
-all

SPFレコードが「-all」で終わる場合、これは厳格なポリシーを示します。
つまり、ドメインの所有者が、すべてのメールは明示的にレコードに記載されたサーバからのみ送信されるべきであると主張していることを意味します。
もしレコードに認可されていない送信者からメールが受信された場合、それは「ハードフェイル」と見なされます。

この場合、メールが拒否されたり、スパムフォルダに振り分けられたりする可能性があります。
一方、SPFレコードが「~all」で終わる場合、これはより柔軟なポリシーを示します。
これは、ドメインの所有者がレコードで認可されたサーバからのメール送信を推奨しているが、それを厳格には強制しないことを意味します。

認可されていないサーバからのメールは「ソフトフェイル」として扱われます。
受信メールサーバがソフトフェイルに遭遇した場合、そのメールを直ちに拒否するのではなく、そのメールを潜在的に疑わしいものとしてマークすることがあります。

このブログがあなたの問題解決に役立ち、「No SPF record found」というエラーに二度と悩まされることがなくなることを願っています。
メールの到達率とセキュリティを向上させるために、ぜひ無料のDMARCトライアルにご登録ください。

Steve Smith

「私たちのビジネスは信頼に基づいています。それはクライアントとの間だけでなく、パートナーとの間にも言えることです。
PowerDMARCとの素晴らしいパートナーシップにより、クライアントに卓越したサービスを提供することができています。」

スティーブ・スミス
アドバンテージ社 オークランド地域マネージャー

コンテンツのレビューおよび事実確認プロセス

この記事は、15年以上の業界経験を持つサイバーセキュリティの専門家によって執筆されています。
私たちは、実際にクライアントがこのようなエラーを解決するために導入した現実的な戦略に基づいた解決策を提供しています。
これまでにクライアントの助けとなったように、あなたの助けにもなることを心より願っています。