据称我有example.com
一个域名,并且希望它允许从 发送邮件subdomain.domain.com
。
如果 spf 记录应该验证从 *@subdomain.domain.com 地址发送的电子邮件(或邮寄者:subdomain.domain.com),是否"v=spf1 a:domain.com ~all"
也允许 domain.com 的子域名或仅允许 domain.com?
我不确定我的问题是否有意义,但我很高兴找到答案。
答案1
SPF 的工作方式与您描述的略有不同。
SPF 记录不允许域名;它们允许邮件服务器。当你输入a:domain.com
SPF 记录时,这仅意味着“接受邮件来自 IP 地址位于domain.com/A
“。如果它实际上指向您的传出 SMTP 服务器,那就很好。(在较大的站点中情况并非如此。)
include:domain.com
工作原理类似:它不查找“A”记录,而是查找“TXT”记录并导入 domain.com 的 SPF 策略。但这仍然归结为“接受来自 domain.com 的 SPF 会接受的 IP 地址的邮件”。
因此,要回答这个问题,a:
或include:
不会包含子域。这没有意义,实际上也是不可能的:验证者无法知道给定的 IP 地址是否存在某处 在域内。
SPF 记录他们自己通过在 DNS 中查找发件人的域来找到。例如,如果邮件[email protected]
的 Envelope-From 地址为,则 SPF 验证器将搜索 TXT 记录subdomain.example.com
– 但它们将不会搜索父域。
换句话说,SPF 策略在domain.com
才不是适用于 发送的邮件*@subdomain.example.com
。如果您希望两个域都受到 SPF 保护,则应明确复制或“包含”该策略,或使用“redirect=”修饰符。