← RFC Reference

RFC 6652: SPF 身份验证失败报告

Current Standard Abuse Reporting & Feedback Published March 2026
ELI5: SPF 让你声明允许哪些服务器为你的域名发送电子邮件。但是当某人未能通过检查时会发生什么——无论是冒充者还是你忘记授权的合法服务器?RFC 6652 让你发布一条 DNS 记录,说"如果我的域名 SPF 检查失败,请向我的这个地址发送失败报告。"你会收到每次失败的单独取证报告,帮助你找到配置不当的发件人和冒充企图。

为什么这个存在

SPF(RFC 7208)验证发送IP是否被授权用于信封发件人域。当SPF失败时,可能意味着:

没有失败报告,你对这些事件一无所知。DMARC汇总报告(RFC 7489)给你每日摘要,但RFC 6652专门为SPF失败提供单条消息法医报告。这些报告使用ARF格式(RFC 5965)和auth-failure反馈类型,由RFC 6591扩展。

工作原理

域名所有者在_spf._report.<domain>发布特殊DNS TXT记录,告诉接收者在哪里发送SPF失败报告。

DNS记录

; 请求SPF失败报告发送到此地址
_spf._report.example.com.  IN TXT  "v=spf-report1; ra=spf-reports; rp=100; rr=all"

记录字段

标签 含义 示例
v 版本(必须为spf-report1) v=spf-report1
ra 报告地址本地部分(报告发送到ra@domain) ra=spf-reports → spf-reports@example.com
rp 报告百分比(0–100) rp=100(报告所有失败)
rr 请求报告的结果类型 rr=all、rr=fail、rr=softfail

示例失败报告(ARF格式)

From: arf-generator@receiver.example
To: spf-reports@example.com
Subject: SPF failure report for example.com
Content-Type: multipart/report; report-type=feedback-report;
    boundary="SPF-REPORT-001"

--SPF-REPORT-001
Content-Type: text/plain

SPF authentication failure report for a message
claiming to be from example.com.

--SPF-REPORT-001
Content-Type: message/feedback-report

Feedback-Type: auth-failure
User-Agent: Receiver-MTA/2.0
Version: 1
Auth-Failure: spf
Authentication-Results: receiver.example;
    spf=fail smtp.mailfrom=example.com
Original-Mail-From: user@example.com
Source-IP: 198.51.100.50
Reported-Domain: example.com
Delivery-Result: reject

--SPF-REPORT-001
Content-Type: text/rfc822-headers

From: user@example.com
To: recipient@receiver.example
Subject: Important update
Message-ID: <msg-001@example.com>

--SPF-REPORT-001--

关键技术细节

SPF的Auth-Failure字段值

值 发送时机
spf SPF评估返回失败、软失败或其他非通过结果时

Auth-Failure字段用于区别SPF报告与DKIM或DMARC失败报告,这些报告也使用auth-failure反馈类型(在RFC 6591中定义)。

与DMARC报告的关系

DMARC(RFC 7489)有自己的报告机制,包含两种类型:

RFC 6652报告特定于SPF且独立于DMARC。实际上,大多数接收者生成DMARC汇总报告(广泛支持),但由于隐私问题,很少有人生成RFC 6652或DMARC法医报告。然而,在支持的情况下,RFC 6652报告为SPF提供最详细的单个失败数据。

隐私考虑

失败报告可能包含收件人地址和消息头,引发隐私问题。许多接收者限制包含的内容或根本不生成这些报告。rp标签让域名所有者请求百分比少于100以减少报告量。

常见错误

投递性影响

Related RFCs