SPFレコードの中央にある「〜all」は、解析時にレコードの終わりを示しますか?


9

当社のSPFレコードフォーマットは以下の通りです:

"V = spf1レコードが含まれます:_spf.google.com 〜すべてのmx IP4:XX0.0 / 23は以下のとおりです。spf.example.comをすべての?"

したがって、SPFレコードの中央に「〜all」があります。上openspf.comのウェブサイト、彼らは「すべて」のメカニズムについて、これを言います:

このメカニズムは常に一致します。これは通常、SPFレコードの最後に置かれます。

したがって、彼らは「すべて」がSPFレコードの最後に行く必要があるとは言いませんが、通常は最後に行くと言います。

弊社では、最近、SPFレコードにリストされているサーバーから送信された電子メールにソフトフェイルが発生するのを目にしていますが、SPFレコードはこれまでに見つかったすべての検証ツールを通過しています。

私が思っているのは、Google Apps(_spf.google.com)のインクルードの直後の「〜all」が原因で解析が停止し、SPFレコードの残りの部分が認識されないのでしょうか。パスとソフトフェイルは、誰がそれを解析し、S​​PFレコードを処理する方法の具体的な実装に依存しますか?SPFレコードの最後にない「すべて」のメカニズムを使用する理由はありますか?

そして、はい、SPFレコードを変更するだけでよいことはわかっています。この質問は、これがどのように機能するかを明確にすることに関するものであり、必ずしも特定の状況を解決することに関するものではありません。

回答:


11

RFC 7208§5.1はこれについて明示的です:after allが表示された後、それ以降はすべて無視する必要があります。

「すべて」の後のメカニズムはテストされません。「すべて」の後にリストされているメカニズムは無視する必要があります。用語の相対的な順序に関係なく、レコードに「すべて」のメカニズムがある場合は、「リダイレクト」修飾子(セクション6.1)を無視する必要があります。

廃止されたRFCRFC 4408はほとんど同じことを言っています。RFCの新しいバージョンでは、意図が明確にされています。

「すべて」の後のメカニズムはテストされません。「すべて」のメカニズムがある場合、「リダイレクト」修飾子(セクション6.1)は効果がありません。

したがって、SPFの適合実装は、最初のの後のすべてを完全に無視します~all。ただし、これはすべての実装が仕様に準拠しているという意味ではありません。特に、1つ以上の実装が準拠していないため、これはおそらく明確にする価値があると考えられていました。

オンライン検証ツールがこの誤った構成を検出しない理由はまったく明らかではありませんが、最初のall使用後に何かを使用する場合は、適切な実装がそれを無視するため、レコードを修正する必要があります。


7

「v = spf1 include:_spf.google.com〜all a mx ip4:XX0.0 / 23 include:spf.example.com?all」

順番に言う:

「SPFレコードを渡すメール_spf.google.comはドメインで有効です」

「ドメインの他のすべての送信者でのソフトフェイル」

「Aレコードからのメールはドメインで有効です」

「MXレコードからのメールはドメインで有効です」

「IP範囲からのメールx.x.0.0/23はドメインで有効です」

「SPFレコードを渡すメールspf.example.comはドメインで有効です」

「私たちのドメインの他のすべての送信者からのメールは、何らかの方法で検証することはできません。」

レコード構文ごと:

メカニズムは順番に評価されます。一致するメカニズムまたは修飾子がない場合、デフォルトの結果は「中立」です。

ですから、「他のすべてのソフトフェイル」にぶつかった場合、それは本当にそれについてです...指定した残りのメカニズムを無視する必要があります。

SPFレコードはできるだけ簡潔にする必要があります。ドメインにメールを送信する必要がある/ 23ネットワーク全体も、すべてのAレコードもないはずです。たぶんそう...しかしおそらくそうではない。

きれいなSPFレコードは次のようになります。

「v = spf1 include:_spf.google.com include:spf.example.com mx -all」

これは基本的に、_spf.google.com、spf.example.com、およびMXレコードがドメインの唯一の有効な送信者であることを示します...それ以外はすべて無効として扱う必要があります。


0

適切に実装 SPFチェッカーがオン短絡う機構一致とはcheck_host()関数は、結果として、修飾子値を返します。ほとんどの電子メールサーバーがRFCを遵守しているかどうかについて、提供する「実際の」データはありません。

出典:RFC7208(17ページを参照)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.