mail.example.com
從兩個位置發送網域郵件時,如何製作 SPF 記錄:
郵件伺服器位於公用 IP 位址
198.51.100.111
(又稱)mail.example.com
。位於公用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
&a
到ip4:203.0.113.222
。
你可以~all
將(軟故障)替換為-all
(硬故障)。然而,例如,弗雷迪·李曼的終極 SPF/DKIM/DMARC 最佳實務 2023建議使用軟失敗是有充分理由的:
使用
~all
(softfail) 而不是-all
(fail) 是最佳實踐,因為後者可能會導致接收伺服器在 SMTP 傳輸時封鎖郵件,而不是評估可能的 DKIM 簽章和 DMARC 策略。