所以,我一直认为,单个SPF条目必须适合255个字符,或者使用include运算符将多个条目链接在一起形成一个链。 但是,RFC 4408 3.1.3。 特别指出在评估之前必须连接多个string,所以IN TXT "v=spf1" " 1.2.3.4 -all"必须与IN TXT "v=spf1 1.2.3.4 -all" 。 值得注意的是,这允许任意大的SPFlogging,并且include成为包括其他人pipe理的SPFlogging的工具。
这是对规范的正确解释吗? 更重要的是,当前的邮件服务器会尊重这个多stringtypes的TXTlogging吗?
是的,你正在解释它。 我最近处理了这个。
这篇文章对我有帮助:
我可以有长度超过255个字符的TXT或SPFlogging吗?
这个概念在实践中的一个值得注意的例子是截至2/25/2016的cisco.com的SPFlogging:
> ;; QUESTION SECTION: ;cisco.com. IN TXT > > ;; ANSWER SECTION: cisco.com. 12775 IN TXT > "926723159-3188410" cisco.com. 12775 IN TXT > "v=spf1 ip4:173.37.147.224/27 ip4:173.37.142.64/26 > ip4:173.38.212.128/27 ip4:173.38.203.0/24 ip4:64.100.0.0/14 > ip4:72.163.7.160/27 ip4:72.163.197.0/24 ip4:144.254.0.0/16 > ip4:66.187.208.0/20 ip4:173.37.86.0/24" " ip4:64.104.206.0/24 > ip4:64.104.15.96/27 ip4:64.102.19.192/26 ip4:144.254.15.96/27 > ip4:173.36.137.128/26 ip4:173.36.130.0/24 mx:res.cisco.com > mx:sco.cisco.com ~all" cisco.com. 12775 IN TXT > "MS=ms65960035"
正如您已经指出的那样,只要确保您在logging中占据空格。
另外,请记住,您需要将每个SPF RFC的logging中的DNS查找次数限制为10次:
SPF实现必须将执行DNS查找的机制和修饰符的数量限制在每个SPF检查至多10次,包括使用“包含”机制或“redirect”修改器引起的任何查找。 如果在检查过程中超过这个数字,则必须返回一个PermError。