多個郵件來源的 SPF 記錄

多個郵件來源的 SPF 記錄

mail.example.com從兩個位置發送網域郵件時,如何製作 SPF 記錄:

  1. 郵件伺服器位於公用 IP 位址198.51.100.111(又稱) mail.example.com

  2. 位於公用IP位址的網路伺服器203.0.113.222

答案1

說起來很簡單,只需將兩個地址添加到記錄中即可:

"v=spf1 +ip4:198.51.100.111 +ip4:203.0.113.222 ~all"

……但還有更多內容。

  • 您可能沒有發送mail.example.com郵件信封寄件人,但是example.com,這標誌著該政策應該允許兩者。
  • HELO 主機名稱也可以而且應該受到 SPF 的保護。
  • 您應該為每個 A 記錄發布 SPF 記錄。否則,您的子網域可能會被用作信封寄件者。

這些在中進行了更詳細的解釋這個答案

所以,如果你有,例如,

example.com.       IN  A    203.0.113.222
www.example.com.   IN  A    203.0.113.222
mail.example.com.  IN  A    198.51.100.111
example.com.       IN  MX   mail.example.com.

您的 SPF 記錄可能如下所示:

example.com.       IN  TXT  "v=spf1 +ip4:198.51.100.111 +ip4:203.0.113.222 ~all"
www.example.com.   IN  TXT  "v=spf1 +a ~all"
mail.example.com.  IN  TXT  "v=spf1 +a ~all"

儘管該ip4機制減少了 DNS 查詢,但您並沒有需要使用它:

example.com.       IN  TXT  "v=spf1 +mx +a ~all"

在這裡,mx擴展為ip4:198.51.100.111&aip4:203.0.113.222


可以~all將(軟故障)替換為-all(硬故障)。然而,例如,弗雷迪·李曼的終極 SPF/DKIM/DMARC 最佳實務 2023建議使用軟失敗是有充分理由的:

使用~all(softfail) 而不是-all(fail) 是最佳實踐,因為後者可能會導致接收伺服器在 SMTP 傳輸時封鎖郵件,而不是評估可能的 DKIM 簽章和 DMARC 策略。

相關內容