2024年版 「No SPF record found」の修正方法
SPFのエラーを修正する
2024年4月5日
著者: Maitham Al Lawati
翻訳: 竹洞 陽一郎
この記事はPowerDMARCのブログ記事 How to Fix “No SPF record found” in 2024? の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。
「No SPF Record Found」というエラーは、ドメインのDNS設定にSPFレコードが存在しないことを意味します。
これを修正するには、DNSにSPFレコードを公開する必要があります。
このブログを読んでいるということは、次のようなメッセージのいずれかに遭遇したことがありますか?
- No SPF record found
- SPF record is missing
- No SPF record
- SPF record not found
- No SPF record published
- Unable to find SPF record
これらのメッセージは異なる表現ですが、いずれも同じ意味を持っています。
つまり、ドメインがSPFメール認証標準で設定されていないことを示しています。
SPFレコードとは何か?
SPFレコードは、ドメインのDNSに公開されるDNS TXTレコードで、認証されたIPアドレスに基づいてメッセージを認証します。
SPFは「Sender Policy Framework」の略で、メール認証プロトコルです。
他の認証メカニズムと組み合わせることで、攻撃者がメールをなりすますのを防ぐために使用できます。
SPFはDNSレコードを利用して、送信サーバがドメイン名からメールを送信する権限を持っているかを検証します。
これは「経路ベース」の認証システムであり、メールが送信元のサーバから受信サーバまでたどる経路に関連しています。
なぜSPFレコードが見つからないのですか?
SPFレコードが見つからない主な理由は2つあります。
- 1つ目で最も単純な理由は、ドメインに実際にSPFレコードが欠けていることです。
- 2つ目は、無効または誤ったSPFレコードが「No SPF Record Found」エラーを引き起こす場合です。
なぜSPFを設定する必要があるのか?
SPF(Sender Policy Framework)メール認証が必要だと言われたことがあるかもしれません。
しかし、本当にビジネスにとって必要なのでしょうか?
また、他にどのような利点があるのでしょうか?
この疑問は、企業や中小企業が自社の組織内で大規模なメール交換を行うようになると、理解されることが多いです。
SPFを使用すると、ドメイン名から送信されたメールが自分の許可によるものであるかどうかを確認できます。
SPFレコードが存在しない場合、ドメインは次のような形で悪用される可能性があります。
- 攻撃者があなたを装ってフィッシングメールを送信する
- 攻撃者があなたのドメインをより簡単になりすます
- あなたのドメインが大量のスパムメール送信に利用される
- GmailやYahooの受信トレイでメールがブロックされたり、スパムとしてマークされたりする
PowerDMARCの2024年版DMARC Adoption Reportでは、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レコードが
SPFレコードが |
「No SPF Record Found」エラーを修正する方法
「No SPF Record Found」エラーを回避するには、以下の手順を実行してください。
- ステップ 1: SPFレコードの欠落を確認する
-
最初のステップは、「No SPF Record Found」エラーが存在するか確認することです。
PowerDMARCに無料で登録し、SPFチェッカーツールを使用してDNSを調べてください。この例では、ドメインがSPF検索で「No records found」と返されました。
- ステップ 2: SPFレコードを作成する
-
次に、DNS TXTレコードを作成してドメイン用にSPFを構成します。
当社のポータルにある無料のSPFレコードジェネレーターを使用すると、正しい構文で即座にレコードを作成できます。 - ステップ 3: SPF構文フィールドを設定する
-
- ドメインのMXとしてリストされたサーバがメールを送信できるようにするか選択
- ドメインの現在のIPアドレスがこのドメインのメール送信を許可するか選択
- ドメインからメールを送信する権限を持つIPアドレスを入力
- ドメインのメールを配信または中継する可能性のある他のサーバホスト名やドメインを追加
- SPFポリシーモードまたは受信サーバの厳密性レベルを選択(Fail: 非準拠メールを拒否、Soft-fail: 非準拠メールを受け入れてマーク、Neutral: メールはおそらく受け入れられる)
- 「Generate SPF Record」をクリックして、即座にレコードを作成
- ステップ 4: レコードをDNSに公開する
-
ドメインレジストラに連絡してDNS管理コンソールにアクセスします。
DNSレコードを編集してSPF用の新しいレコードを追加する必要があります。 - ステップ 5: SPFの実装を確認する
-
最後に、同じSPFチェッカーツールを使用して、公開されたSPFレコードを調べて検証します。
「No valid SPF record found」/「No valid SPF record」

「No SPF record found」エラーに類似したバリエーションとして、「No valid SPF record found」というエラーがあります。
このエラーは、DNSにSPFレコードが存在していても、そのレコードが有効でないことを意味します。
これは構文エラーや、冗長または無効なメカニズムが原因で発生する可能性があります。
この解決策には以下のようなものがあります。
- オンラインツールを使用してレコードを確認する
- レコードを最適化し、既存のエラーを取り除く
- ESP(Email Service Provider)と問題について相談する
- それでも解決しない場合は、外部サービスプロバイダに管理をアウトソースするか、メール認証の専門家に相談する
SPFレコードが有効であるかを確認する方法
SPFレコードの有効性を確認するには、オンライン検証ツールを使用してDNSレコードを検索する必要があります。
PowerDMARCのSPFチェッカーツールと同様です。
「Valid」ステータスに緑色のチェックマークが表示されれば、SPF DNSレコードが有効であることを示します。
有効なSPFレコードを追加する方法
正しいSPFレコードを追加するには、手動で行うのではなく、PowerDMARCのような自動レコード生成ツールを使用します。
これにより、構文エラーの可能性を減らせます。
また、有効なレコードを設定する際には以下の点に注意してください。
- DNSルックアップ10回の制限を超えない
- 2回のVoid Lookup(無効ルックアップ)制限を超えない
- SPFレコードの長さを最大制限内に収める
- ドメインのSPFレコードは1つだけにする
SPFレコードを公開するだけで十分ですか?
答えは「いいえ」です。
SPFだけではブランドがなりすましから保護されることはありません。
ドメインの直接なりすまし、フィッシング攻撃、BEC(Business Email Compromise)に対して最適な保護を得るには、DKIMやDMARCも構成する必要があります。
さらに、SPFにはDNSルックアップ10回までの制限があります。
この制限を超えると、SPFが無効になり、正当なメールでも認証に失敗します。
そのため、PowerDMARCのホスト型SPFソリューションを使用することで、この制限を守り、メールプロバイダによる変更にも対応できます。
このブログが問題解決の助けとなり、「No SPF record found」エラーに悩むことがなくなることを願っています。
無料DMARCトライアルに登録して、メール配信率とセキュリティを向上させましょう!
コンテンツのレビューおよび事実確認プロセス
この記事は、15年以上の業界経験を持つサイバーセキュリティ専門家によって執筆されました。
提示した解決策は、現実の実践的な戦略に基づいており、これらの戦略を通じてクライアントがこのようなエラーを解決するのを支援してきました。
過去にクライアントに役立ったように、この記事があなたの助けとなることを心より願っています!