Deliverability

SPF vs DKIM vs DMARC:有什么区别?

SPF 授权发送服务器,DKIM 验证签名的邮件内容,DMARC 检查与可见 From 域的对齐,并发布失败策略和报告偏好。

授权的服务器可以发送不需要的邮件。有效的签名可以属于与收件人看到的不同的域。每项检查回答关于邮件的不同问题。

每项检查证明了什么?

SPF 检查发送 IP,DKIM 检查签名,DMARC 将通过结果与可见的 From 域关联。

检查项检查的身份通过时证明了什么不能证明什么
SPFEnvelope-from 域,通常用于退信连接 IP 已被该域的策略授权。可见的 From 域或邮件的完整性。
DKIM签名中 d= 值对应的签名域签名可通过其发布的公钥和签名内容验证。邮件的每个部分都已签名,或收件人需要该邮件。
DMARC可见的 From 域至少有一个通过的 SPF 或 DKIM 结果与该域对齐。保证送达或进入收件箱。

SPF 如何工作?

接收方将连接服务器的 IP 与 DNS 中为 envelope-from 域发布的 SPF 策略进行比对。由于 SPF 不检查邮件内容,接收方可以在收到邮件正文之前完成该检查。

  1. 你发布授权使用该域的服务器或服务。
  2. 接收方查找策略,并根据连接 IP 评估其规则。
  3. 接收方将结果与自身的接受和过滤策略结合使用。

如果校友邮箱在不更改 envelope-from 地址的情况下将邮件转发给其他服务商,转发 IP 可能缺少授权。邮件列表重新发送邮件时也会产生同样的问题。转发方可以使用 Sender Rewriting Scheme (SRS),将 envelope-from 地址更改为自己能验证的域。

SPF 记录指定授权的发送方。嵌套的服务商策略会计入 DNS 查找限制

DKIM 如何工作?

你的发送服务器使用私钥对邮件内容进行签名。接收方使用 DNS 中对应的公钥来验证该签名。

签名通过 d= 标识签名域,通过 s= 标识密钥选择器。选择器指明哪条 DNS 记录包含公钥。接收方使用该域和选择器查找公钥并验证签名

单纯转发不会使 DKIM 失效,因为该检查不依赖转发服务器的 IP。修改已签名的内容(例如添加邮件列表页脚)可能导致签名失效。签名验证其覆盖的内容,但不加密邮件。

DMARC 如何关联这些身份?

DMARC 要求有一个通过的 SPF 或 DKIM 结果,其域与可见的 From 域对齐。任一对齐的通过即满足要求。

例如,一封显示 From: billing@example.com 的邮件可以在宽松对齐下通过 send.example.com 的 SPF。带有 d=example.com 的 DKIM 签名通过同样可以对齐。unrelated.example 的验证通过并不意味着它与 example.com 对齐。

你发布 DMARC 策略来请求对验证失败邮件的处理方式和身份验证报告。参与的接收方提供报告;没有报告并不能证明没有邮件使用你的域。

你应该为 Bird 配置什么?

你为发送域发布 DKIM、return-path CNAME 和 DMARC。return-path CNAME 指向 Bird 的退信基础设施,它提供 SPF 授权,无需额外的 apex SPF 记录。

dns_records 复制记录。检查 capabilities.sending.status 的发送就绪状态。其值表示你接下来需要做什么:

状态含义与操作
pending验证尚未运行或正在运行;等待结果。
verified该功能的 DNS 记录与预期值匹配。
warning之前验证通过的记录不再匹配;在宽限期结束前修复。发送尚未受影响。
failedDNS 值有误;请更正。
temporary_failureDNS 查找临时失败;验证将自动重试。
not_configured该功能尚未为此域配置。

发布身份验证记录验证你的发送域

应该使用哪些检查?

将 SPF 和 DKIM 与 DMARC 配合使用,使经过验证的身份与收件人看到的域关联。

  1. 使用 SPF 授权 envelope-from 域的发送基础设施。
  2. 使用 DKIM 签名外发邮件并发布验证密钥。
  3. 发布 DMARC,审查报告的身份验证失败,在实施隔离或拒绝之前修正合法的发送方。

付诸实践。

继续查阅此主题的文档、指南和示例。资源为英文。

获取实施简报

基于同一网络构建。

测试 API 密钥即刻获取。添加付款方式并验证发送者身份后,即可解锁生产环境。

从一个渠道开始。
准备好后,再添加其他渠道。

测试 API 密钥即刻可用。添加支付方式并验证发送者身份后,即可解锁生产环境。

正在使用 Claude Code、Cursor 或 Codex?复制一条设置提示,您的智能代理即可自动安装 Bird CLI 和相关技能。选择您的工具:

Cursor