Office365 SPF PermError:太多的DNS查找

我们正在从自我托pipe的邮件平台迁移到Office365 for Business。 一切都很好,除了SPFlogging。 此刻,我们有v=spf1 a mx include:spf.mtasv.net -all为TXTlogging,但Office365必须允许v=spf1 include:spf.protection.outlook.com -all也一样。 所以,我继续前进,并将它们合并为: v=spf1 a mx include:spf.mtasv.net include:spf.protection.outlook.com -all 。 当在studentkickoff.be的域中检查SPFlogging时,这会导致PermError SPF Permanent Error: Too many DNS lookups

我的问题是以下几点:我如何解决这个错误? 我知道我可以用ip4replace一些logging,但是当这样做的时候,Office365的在线疑难解答持续抱怨没有findlogging: 在这里输入图像说明

提前致谢!

除了已经说过的一切之外,让我们把重点放在这个:

 My question is the following: How do I work around this error? I know I can replace some records with their ip4 equivalent, but when doing this, the online troubleshooter of Office365 kept complaining that the record was not found: 

我最近遇到了同样的问题。
虽然它被logging,它应该工作( http://community.office365.com/en-us/w/exchange/customize-an-spf-record-to-validate-outbound-email-sent-from-your-domain .aspx )我们永远无法得到它与一个不同的logging进行validation。
如果是a:some.host.comip4:127.0.0.1 ,那么这个问题并不重要,它总是抱怨SPFlogging错误/丢失。
最后,我们将logging更改为v=spf1 include:spf.protection.outlook.com -all使validation向导快乐起来,然后将其调整回真实logging。

从这里采取的答案作者: 斯威夫特 。 适应这个问题。 另外,请在这里阅读一般SPF的东西。

我们开始:

 v=spf1 a mx include:_spf.google.com include:servers.mcsv.net include:sendgrid.net ~all 

在我们抛出Too many DNS lookups错误之前,我们总共有10次查找:

  2 (Initial TXT & SPF Lookups) 2 (a & mx Lookups) 1 (_spf.google.com) 1 (servers.mcsv.net) +1 (sendgrid.net) ----------------- 7 Lookups 

所以,即使没有包括SPFlogging,我们也有7个查找。


现在,让我们深入一个层次。

1. _spf.google.com

谷歌SPFlogging评估为:

 v=spf1 include:_netblocks.google.com include:_netblocks6.google.com ?all 

每个parsing为以下值:

 # _netblocks.google.com v=spf1 ip4:216.239.32.0/19 ip4:64.233.160.0/19 ip4:66.249.80.0/20 ip4:72.14.192.0/18 ip4:209.85.128.0/17 ip4:66.102.0.0/20 ip4:74.125.0.0/16 ip4:64.18.0.0/20 ip4:207.126.144.0/20 ip4:173.194.0.0/16 ?all # _netblocks6.google.com v=spf1 ip6:2607:f8b0:4000::/36 ip6:2a00:1450:4000::/36 ?all 

所以谷歌给了我们两个更多的查询,总计高达9查找

2. servers.mcsv.net

Mailchimp是一个doosey的一点,因为它增加了整个3额外的查找:

 v=spf1 include:spf1.mcsv.net include:spf2.mcsv.net include:spf.mandrillapp.com ?all 

我会想象,根据您通过Mailchimp发送的内容,您可能可以删除这些logging中的一个或两个(但您必须亲自评估)。

无论如何,这些解决scheme如下:

 # spf1.mcsv.net v=spf1 ip4:207.97.237.194/31 ip4:207.97.238.88/29 ip4:207.97.240.168/29 ip4:69.20.10.80/29 ip4:69.20.41.72/27 ip4:74.205.22.1/27 ip4:69.20.90.0/26 ?all # spf2.mcsv.net v=spf1 ip4:204.232.163.0/24 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/24 ?all # spf.mandrillapp.com v=spf1 ip4:205.201.136.0/24 ip4:205.201.137.0/24 ?all 

这使我们总共达到了12个查找 (这已经超过了两个)。

2. sendgrid.net

SendGrid最终成为我们最less的额外查找。

 v=spf1 ip4:208.115.214.0/24 ip4:74.63.202.0/24 ip4:75.126.200.128/27 ip4:75.126.253.0/24 ip4:67.228.50.32/27 ip4:174.36.80.208/28 ip4:174.36.92.96/27 ip4:69.162.98.0/24 ip4:74.63.194.0/24 ip4:74.63.234.0/24 ip4:74.63.235.0/24 include:sendgrid.biz ~all 

所以这里唯一的附加查找是sendgrid.biz ,它的计算结果如下:

 v=spf1 ip4:208.115.235.0/24 ip4:74.63.231.0/24 ip4:74.63.247.0/24 ip4:74.63.236.0/24 ip4:208.115.239.0/24 ip4:173.193.132.0/24 ip4:173.193.133.0/24 ip4:208.117.48.0/20 ip4:50.31.32.0/19 ip4:198.37.144.0/20 ~all 

这使我们的总计高达14查找。


所以我们的总计是14查找 。 我们需要将其降低到10.我已经在下面列出了几个选项,您可能需要使用其中一个以上的选项。

  1. 直接包含一些redirect的spflogging。 现在我们知道spfloggingredirect到哪个服务器,你可以切掉中间人并直接包含它们。 注意:如果任何服务最终更改了SPFlogging,则必须手动完成更新。

  2. 删除您正在使用的一些服务。 不知道你的用例是什么,所有这些服务,但肯定有一些重叠,你可以使用。 例如,SendGrid支持(1)事务处理外发邮件,(2)通讯/营销电子邮件和(3)传入邮件。 所以可能会有一些可裁减的冗余。

  3. 删除MXlogging是否冗余。 根据您的设置,MX查找可能是多余的。

您可以使用SPF代理服务,如spfproxy.org。 那么你就不需要将DNS条目变成IP地址,甚至可以用子域名拧紧。 您只需设置SPF代理,它将在后端执行所有查找。 这是我发现解决这个问题的唯一方法。

我可以看到这是创build专门用于通过第三方发送的子域的一个很好的理由:

如果您有不同的第三方发件人处理可以注册的不同内容,则设置单独的子域名可能是pipe理该域名的好方法:

子域名可以基于正在发送的内容:

  • NewsLetterName.Example.com通过第三方发送的通讯可以有特定于第三方的spflogging。
  • Updates.Example.com当“更新”已经注册。
  • Support.Example.com用于通过第三方提供“支持”。

或者子域名可以基于第三方发件人:

  • ccMail.Example.com为常量联系电子邮件
  • 邮件黑猩猩电子邮件mcMail.Example.com
  • zendeskMail.Example.com ZendDesk电子邮件

现在我真的喜欢这个想法,我已经映射出来了! 我会自己尝试一下。 这将意味着为这些子域名设置额外的电子邮件地址,但这样可以更轻松地组织电子邮件。