SPF Record Syntax: Mechanisms, Qualifiers, Modifiers, and Macros
3 hours ago
- SPF记录是单个以v=spf1开头的TXT记录;任何语法错误都会使整个记录失效。
- 存在八种机制:all、include、a、mx、ptr、ip4、ip6、exists;每种机制要么匹配客户端IP,要么不匹配。
- 限定符(+、-、~、?)在机制匹配时设置结果;默认为+(通过)。
- 修饰符如redirect=和exp=提供额外信息;当所有机制都失败后,redirect=将评估交给另一个域。
- 宏(%{...})展开动态值(如发件人或客户端IP),通过exists实现基于IP的授权。
- 评估采用首次匹配原则;顺序重要,all之后的机制被忽略。
- DNS查找限制为10次(包括include、a、mx、ptr、exists、redirect);ip4、ip6、all、exp不受限制。
- 常见错误:使用ipv4代替ip4、冒号后空格、多个SPF记录、all之后的条目。
- 长记录(超过255个字符)必须拆分为一个TXT记录中的多个引号字符串,连接时不含空格。
- 实用建议:对严格策略使用-all,对发现策略使用~all,避免使用ptr和破坏缓存的宏字母。