MailData

御社のSPFは制限を超えてませんか?

「SPFの最大文字数制限」を如何に解決するか?

2021年12月10日
著者: Syuzanna Papazyan
翻訳: 竹洞 陽一郎

この記事はPowerDMARCのブログ記事 How to fix “SPF exceeds maximum character limit”?の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。


SPFレコードの長さには制限がありますか?
答えは簡単で、あります。
SPFレコードの長さには255文字の制限があり、これを超えるとSPFが破損し、認証に失敗する可能性があります。

「SPF exceeds maximum characters limit」というメッセージが表示された場合、それは単に、お客様のDNSのSPFレコードがRFC7208で規定された文字数制限よりも長いことを意味します。
これは、特にメールの配信がSPF適合性に大きく依存している場合に問題となります。

既にSPFレコードをお持ちですか?
PowerDMARCの無料のSPFチェッカーでその有効性を確認してください。

SPFの長さの制限を超えないように最適化する

  1. レコードにPTR機構を使用することは避けてください。
    これは、SPFのRFCガイドラインでは現在サポートされておらず、SPF文字列の文字数がさらに増えてしまうためです。
  2. SPFの255文字の制限を回避して、SPFに失敗することなくエラーメッセージを回避したい場合は、RFCでは1つのSPF DNSレコードに複数の文字列を使用することが認められています。
    但し、レコードが有効であるためには、これらの文字列は全て、間にスペースを挟まずに繋がっている必要があります。
    各行が別のレコードとして扱われるため、複数の行に分かれていない、1つの連続した行であることを確認してください。
    1つのドメインに複数のレコードがあるとSPFが破綻します。
  3. SPFレコード内の冗長、繰り返し、およびNULL機構を削除してください。
    これは文字数制限にも追加されます。これにより、あなたのレコードが短く、簡潔で、有効であることを保証します。
  4. SPFフラットニングツールを使用すると、255文字のSPFレコード長の制限を超えないように自動的にレコードを最適化することができます。

SPFの文字数制限を超えた場合にどうなるか?

SPFの255文字の制限を超えると、DNSのレコードが無効とみなされるため、受信者側でメールの認証に失敗します。
ポリシーやアライメントモードによっては、メールが配信中に失われ、受信者に届かない可能性があります。
SPF認証の失敗に関するレポートを取得するために、ドメインにDMARCレポートアナライザを設定することをお勧めします。

これらのシナリオでレポートを有効にすると、「SPF exceeds maximum character limit」のようなエラーメッセージが表示されるか、「invalid rdata format: ran out of space」というメッセージを表示するために御社のDNSがBINDと通信します。
いずれの場合も、SPFレコードの上限を超えたことを意味します。

PowerSPFでSPFレコードの制限を厳守する

PowerSPFは、SPFに関するすべての問題を解決するワンストップソリューションです。
ルックアップ数を10に制限することも、レコードの長さを規定値に制限することも、PowerSPFは即座に、そして簡単に行うことができます。

DNSレコードを最適化して、エラーのない実装を享受することが、PowerDMARCのメールセキュリティスイートで可能になります。
DMARCトライアルに登録してワンクリックで最適化されたSPFを利用すれば、SPF255文字の制限を超えることはありません。