我正在向我们现有的 SPF 记录添加一个域 (xero.com),以允许从外部系统发送营销电子邮件,并且看起来好像它们来自我们。
xero.com 的 SPF 记录很大,包含它会使我们自己的 SPF 记录超过 10 次查找限制,从而导致错误Permanent Error: Too many DNS lookup
这是不幸的,但是如果这个错误实际上有什么影响(对于硬故障和软故障)?它会阻止发送任何邮件,还是允许所有邮件,或者只是忽略这个包含的域?
除此之外,我们建议我们的一些客户将我们的域包含在他们的SPF 记录中,以便我们可以代表他们发送邮件。
增加我们 SPF 记录中包含的域是否会对他们的域产生负面影响?
相反,如果我通过将我们的 SPF 记录设置v=spf1 +all
为允许一切来解决这个问题,这是否会对可能在他们的 SPF 记录中使用我们的域的客户产生不良影响?
效果是您的 SPF 记录被忽略。请执行以下操作。您的 SPF 记录需要 6 次查找,不包括记录中包含的任何 MX 和 A 记录。(一次 MX 记录查找可能会导致 2 次或更多次查找。)
include:_spf.google.com
条目处理。您不需要 MX 规范。考虑使用报告地址设置 DMARC,以便确定是否可以设置
-all
政策。您将收到有关您遵守政策和失败率的报告。使用report
处置,直到您获得的唯一失败报告是针对并非来自您的域的电子邮件。-all
在确定已在 SPF 记录中列出所有有效发件人之前,请勿将 SPF 策略设置为。马上停止!:)
1) 永远不要将您的 SPF 记录提供给客户进行营销,始终使用子域。
_spf.example.com
例如,是您控制并提供给客户的 IP 范围。2) 限制您的暴露或完全去除 SPF。
+all
(实际上可能会被忽略)表示您验证了所有 IP 范围,而?all
更安全。3) 营销系统不需要您的企业电子邮件域。如果您要拥有多个营销后端,则应该拥有多个子域。通常,他们(ESP)为此而努力,例如
sg.example.com
sendgrid、mg.example.com
mailgun 等……4)删除冗余查找,
a
并且mx
可能是您知道的地址。SPF 规范要求每次 SPF 检查执行 DNS 查找的机制和修饰符的数量不得超过 10 个,包括由使用“包含”机制或“重定向”修饰符引起的任何查找。否则,将返回一个 SPF PermError,更具体地说是“SPF PermError: too many DNS lookups”。
SPF PermError : too many DNS lookups问题被 DMARC 解释为失败。因此,当您的 SPF 记录违反此限制,并且 DKIM 也失败时,您的电子邮件将无法通过 DMARC 身份验证,这意味着您的电子邮件未正确验证并且可能无法到达收件箱。
我创建了一篇关于此主题的博客文章:SPF PermError: too many DNS lookups