SPF:多个邮件服务器

SPF:多个邮件服务器

我有一个带有此 A 记录的域名:

A 1.2.3.4

还有这样的邮件记录,我在不同的托管服务提供商处拥有我的邮件服务以进行交换。

MX mxpool.example.com

现在我想设置正确的 SPF 记录。我尝试过不使用,并尝试了以下方法:

"v=spf1 mx ~all"

但邮件被拦截为垃圾邮件。邮件提供商有一个邮件服务器池,我没有获得正确的 IP。而且邮件服务器的主机名也发生了变化。那么我该如何为此设置正确的 SPF?谢谢。

答案1

ip4选择/几乎总是更好的选择ip6 机制优于任何需要额外 DNS 查询的机制。使用mx成本高昂,因为它需要对MX和 进行两次额外查询A。如果包含的内容和其他非 IP 机制过多,SPF 解析器将耗尽并停止查询。

  1. 询问您的服务提供商。这不应该是一个秘密。

  2. 我首先会查看服务提供商的 SPF 记录。如果它有 IP 块,您可以简单地使用该include机制将其添加到您的 SPF 记录中。

  3. 如果 1 和 2 失败,您应该重新考虑您的电子邮件提供商,因为他们不知道他们在做什么。

  4. 您可以使用 whois 数据库和反向 DNS 作为提示。假设您的邮件是从192.0.2.20和发送的192.0.2.22。它们都来自 netblock,192.0.2.0/24TEST-NET-1。您可以允许整个块ip4:192.0.2.0/24或使用PTR块的记录来检测命名模式,从而揭示所有出站 SMTP 服务器。

答案2

哪个主机实际上会代表域名“发送”邮件?这就是您需要添加到 SPF 记录中的内容。

如果“mxpool.example.com”代表[电子邮件保护],这将起作用:

example.com.IN TXT“v=spf1 mx a ptr a:mxpool.example.com -all

'mx' 允许将主机列为 mx

“a” 允许“A”记录的 IP(1.2.3.4)代表 example.com 发送邮件

“ptr” 允许 example.com 的所有子域代表 example.com 发送邮件(只要您控制整个域就可以)

“a:mxpool.example.com”明确授权该主机代表 example.com 发送邮件(即使它属于前两个规则)。

“-all” 告诉其他邮件服务器,如果邮件不是来自授权主机之一,则应拒绝该邮件(SPF 失败)。

编辑:如果您希望 OtherSendingDomain.com 的主机代表 yourdomain.com 发送,您可以在 spf 记录中添加“include”。应该可以正常工作。

yourdomain.com。IN TXT“v=spf1 mx a ptr a:mx.yourdomain.com include:OtherSendingDomain.com -all”

SPF 的工作方式是,您需要了解并允许代表您的域发送邮件的每个主机。它们可以以某种方式在 spf 记录中明确说明,或从另一个域继承/包含。

相关内容