我目前的SPF记录如下:
v=spf1 mx include:servers.mcsv.net include:xero.com -all
以上情况导致 SPF 验证失败。
使用http://mxtoolbox.com/SuperTool.aspx?action=txt,我可以将查找细分如下:
** Mailchimp SPF **
servers.mcsv.net
v=spf1 include:spf1.mcsv.net include:spf.mandrillapp.com ?all
*spf1.mcsv.net*
v=spf1
ip4:72.26.195.64/27
ip4:74.63.47.96/27
ip4:173.231.138.192/27
ip4:173.231.139.0/24
ip4:173.231.176.0/20
ip4:205.201.128.0/20
ip4:198.2.128.0/18 ?all
*spf.mandrillapp.com*
v=spf1
ip4:198.2.128.0/24
ip4:198.2.132.0/22
ip4:205.201.131.128/25
ip4:205.201.134.128/25
ip4:205.201.136.0/23
ip4:205.201.139.0/24 ?all
** xero.com SPF **
xero.com
v=spf1
ip4:162.209.71.30/32
ip4:72.32.169.144/32
ip4:173.203.14.40/32
ip4:65.61.179.172/31
ip4:72.3.200.184/31
ip4:72.3.177.184/31
ip4:173.203.14.42/32
ip4:198.61.155.105/32
ip4:204.232.255.75/32
ip4:202.55.99.60/32
ip4:119.9.16.210/32
include:_spf.elasticemail.com
include:cmail1.com
include:_spf.google.com ~all
我可以删除 IP 地址并将其添加到我自己的地址(如下所示)吗?或者 SPF 是否会因长度过长或 IP 地址过多而失败?
v=spf1 mx ip4:72.26.195.64/27ip4:74.63.47.96/27 ip4:173.231.138.192/27 ip4:173.231.139.0/24 ip4:173.231.176.0/20 ip4:205.201.128.0/20 ip4:198.2.128.0/18 ip4:198.2.128.0/24 ip4:198.2.132.0/22 ip4:205.201.131.128/25 ip4:205.201.134.128/25 ip4:205.201.136.0/23 ip4:205.201.139.0/24 ip4:162.209.71.30/32 ip4:72.32.169.144/32 ip4:173.203.14.40/32 ip4:65.61.179.172/31 ip4:72.3.200.184/31 ip4:72.3.177.184/31 ip4:173.203.14.42/32 ip4:198.61.155.105/32 ip4:204.232.255.75/32 ip4:202.55.99.60/32 ip4:119.9.16.210/32 -all
虽然上面的内容看起来确实很笨重,但是还有其他方法可以减少查找次数吗,也许可以通过为已知发送电子邮件的服务器创建自己的 SPF 子记录(并定期检查这些记录)?
_accounts-spf.mydomain.com
v=spf1 ip4:162.209.71.30/32 ip4:72.32.169.144/32 ip4:173.203.14.40/32 ip4:65.61.179.172/31
ip4:72.3.200.184/31 ip4:72.3.177.184/31 ip4:173.203.14.42/32 ip4:198.61.155.105/32 ip4:204.232.255.75/32 ip4:202.55.99.60/32 ip4:119.9.16.210/32 ?all
_list-spf.mydomain.com
v=spf1 ip4:72.26.195.64/27 ip4:74.63.47.96/27 ip4:173.231.138.192/27 ip4:173.231.139.0/24 ip4:173.231.176.0/20 ip4:205.201.128.0/20 ip4:198.2.128.0/18 ?all
Then the master record that includes the sub records...
mydomain.com
v=spf1 mx include:_accounts-spf.mydomain.com include:_list-spf.mydomain.com
请问推荐的方法是什么?
答案1
任何 SPF 记录的 DNS 查询次数都不得超过 10 次。您遇到了各种问题(我建议您阅读 SPF 邮件列表的存档以了解详细信息)。但是您没有告诉我们这是针对哪个域的,这让我们更难提供帮助。
mx
- 您的接收邮件服务器是否也发送电子邮件?如果是,请按 IP 列出它们,不要将它们列为mx
。这至少会增加 2 个 DNS 查找(一个用于 MX 记录,一个用于将单个主机名转换为 IP)。- 您包含的SPF 记录
servers.mcsv.net
本身有一个 includev=spf1 include:spf1.mcsv.net include:spf.mandrillapp.com ?all
。这至少增加了 3 个 DNS 查找。 - SPF 记录
xero.com
是另一个怪物,包括v=spf1 ... include:_spf.elasticemail.com include:cmail1.com include:_spf.google.com ~all
至少另外 4 次查找,但谷歌包括另外 3 个子记录,而 elasticemail 包括另一个,所以它实际上是 8 个。
一旦将所有这些加起来,您就会得到至少 13 个 DNS 查找,这比规格多出了 3 个。
您确实需要检查一下发送电子邮件的方式。您真的需要为一个域使用这么多不同的邮件服务吗?您是否可以将所有内容配置为使用通用服务,或者对于某些功能使用子域?例如,通过 mcsv.net 为所有营销电子邮件使用营销子域,为来自 Xero 的所有电子邮件使用会计子域,然后您只需担心常规电子邮件。