我正在寻找设置包含 2 个域的 TXT spf 记录...分别:
v=spf1 include:hotmail.com ~all
和
v=spf1 include:servers.mcsv.net ?all
将它们组合成单个项目的正确方法是什么?
答案1
背景信息
如何包含作品
这请求函数说这包括:
“包含”机制触发 check_host() 的递归评估。
- <domain-spec> 按照第 7 节进行扩展。
- check_host() 的评估结果为 <domain>。<ip> 和 <sender> 参数与 check_host() 的当前评估结果相同。
- 递归评估返回匹配、不匹配或错误。
- 如果返回匹配,则使用“包含”机制的适当结果(例如,include 或 +include 产生“通过”结果,而 -include 产生“失败”)。
- 如果返回不匹配或错误,父 check_host() 将按照下表恢复处理,并恢复 <domain> 的先前值。
机制(默认机制为通过)
“+”通过
“通过”结果意味着客户端被授权使用给定的身份注入邮件。从声誉的角度来看,该域现在可以被视为负责发送邮件。现在可以放心地进行进一步的政策检查,确保身份的合法使用。附录 G.1 对此进行了进一步讨论。
“-“ 失败
“失败”结果明确表明客户端无权以给定身份使用该域。SPF 失败消息的处理属于本地策略问题。有关制定本地策略的注意事项,请参阅附录 G.2。
“~”软失败
“软失败”结果应被视为介于“失败”和“中立”/“无”之间的某个结果。ADMD 认为主机未获得授权,但不愿意做出强有力的政策声明。接收软件不应仅根据此结果拒绝该消息,但可以对该消息进行比平常更严格的审查。
“?“ 中性的
“中立”结果表明虽然发现了身份策略,但是没有关于客户端的明确断言(正面或负面)。
“中性”结果必须与“无”结果完全一样处理;区别仅供参考。对“中性”的处理比对“无”更严厉,会阻止 ADMD 测试 SPF 记录的使用(参见第 10.1 节)。
提供 SPF 记录说明
v=spf1 include:hotmail.com ~all
- 如果电子邮件通过
hotmail.com
则通过,否则将其视为可疑。
v=spf1 include:servers.mcsv.net ?all
- 如果电子邮件通过,
servers.mcsv.net
则通过,否则视为没有 SPF 记录。
如何合并它们
如果您希望将不匹配的电子邮件视为中性,请使用:
v=spf1 include:hotmail.com include:servers.mcsv.net ?all
如果您希望它被视为可疑,那么使用:
v=spf1 include:hotmail.com include:servers.mcsv.net ~all
解释 SPF 记录
我已经建立了一个网站(https://www.checkspf.net/),它允许您查看 SPF 记录的说明,并解释记录的每个部分。不过,这是一个正在开发的网站,因此可能会出现一些问题,我愿意接受带有修复或问题报告的 Pull 请求。