从 SPF 记录获取 IP 列表

从 SPF 记录获取 IP 列表

我们对邮件服务器进行 SPF 检查,我遇到过这样的情况:来自 MimeCast 的邮件有时会通过 SPF 检查,而其他邮件则未通过 SPF 检查。

相关域名的 spf 记录状态

v=spf1 include:spf.protection.outlook.com include:_netblocks.mimecast.com -all

如果我对 IP 进行 whois 查询,则它是一个 Mimecast IP

我的问题是如何查询_netblocks.mimecast.com以获取 IP 列表以便进行故障排除

答案1

您发现许多组织提供 SPF 记录,而这些记录本身又由 SPF 记录组成。当我们这样做时,dig txt _netblocks.mimecast.com我们会

;; ANSWER SECTION:
_netblocks.mimecast.com. 300    IN      TXT     "v=spf1 include:eu._netblocks.mimecast.com include:us._netblocks.mimecast.com include:za._netblocks.mimecast.com include:au._netblocks.mimecast.com ~all"

然后可以查找每一个相似地,例如dig txt eu._netblocks.mimecast.com获取原始 IP 数据:

;; ANSWER SECTION:
eu._netblocks.mimecast.com. 300 IN      TXT     "v=spf1 ip4:195.130.217.0/24 ip4:91.220.42.0/24 ip4:146.101.78.0/24 ip4:207.82.80.0/24 ip4:213.167.81.0/24 ip4:213.167.75.0/24 ip4:185.58.84.0/22 ~all"

Outlook 的记录有点烦人(令人惊讶),因为它是嵌套的:

[me@risby ~]$ dig txt spf.protection.outlook.com
[...]
spf.protection.outlook.com. 586 IN      TXT     "v=spf1 ip4:207.46.101.128/26 ip4:207.46.100.0/24 ip4:207.46.163.0/24 ip4:65.55.169.0/24 ip4:157.56.110.0/23 ip4:157.55.234.0/24 ip4:213.199.154.0/24 ip4:213.199.180.128/26 include:spfa.protection.outlook.com -all"

spfa反过来includespfb但那是最后一个,所以你可以停止挖掘。

更大的问题是,无论这个组织是谁,它都危险地接近于十次查找限制。我数了一下,原始记录有 1 个,outlook 部分有 3 个,mimecast 部分有 5 个;总共有 9 个。如果 outlook 和 mimecast 都再加一个,这个组织就完蛋了。它可能很清楚这一点,但我发现大多数组织都对自己的 SPF 记录的细节一无所知。

这也引出了我的更重要的观点:如果你正在考虑发布 SPF 记录,请确保你能够控制自己的电子邮件基础设施。如果您将其外包,其他人迟早可能会给您带来麻烦,并且您的公司电子邮件将因您未进行且不知情的更改而无法送达。如果您无法控制自己的所有电子邮件,SPF 可能不适合您。

相关内容