TapCub 正式上线:统计、分析、客服一个平台免费用

免费工具 邮件头分析:这封信走了哪条路,是不是真的那个人发的

把邮件的原文信头(「显示邮件原文」「查看信头」里那一大段)粘进来:从发件到收件箱的每一跳和每一跳花的时间、收信服务器记下的 SPF / DKIM / DMARC 结论、这些结论和发件人地址对不对得上,以及会让邮件进垃圾箱的字段问题,一次列出来。

  • 逐跳路径和延迟
  • SPF、DKIM、DMARC
  • 本地解析
分析器

分析邮件头

示例是一封经邮件发送服务发出的双 11 发货通知(主题是 UTF-8 编码的中文)。还可以试试仿冒银行的钓鱼邮件和 RFC 8601 里的例子。

QQ 邮箱:打开邮件 → 更多 → 显示邮件原文。网易 163 / 126:更多 → 查看信头。Gmail:⋮ → 显示原始邮件。Outlook:⋯ → 查看 → 查看邮件源。连正文一起粘也没关系,遇到第一个空行就停止解析。

Received 跳数

4

总投递时间

46 秒

从 Date(没有就从第一跳)到最后一个 Received。

发现

  • 说明等得最久的是第 3 跳之前:+41 秒。某一跳延迟大,通常是排队、反垃圾扫描或灰名单(暂时拒收陌生发件人)。
  • 说明这些结论由 mx.example.org 记录。只有 mx.example.org 是你自己的邮箱服务商时才可信。
  • 正常SPF 通过:em.shop.example.com 允许这台服务器代发。
  • 正常DKIM 通过:shop.example.com 的签名有效。
  • 正常shop.example.com 的 DMARC 通过(发布的策略 p=reject)。
  • 正常发件人域名 shop.example.com 与 SPF + DKIM 对齐,满足 DMARC 的要求。
  • 正常已支持一键退订(HTTPS 的 List-Unsubscribe 加 List-Unsubscribe-Post,RFC 8058)。

身份验证

收信服务器记下的结论。本工具不查 DNS、不重新验签。

检查结果域名与发件人对齐详情
SPFpassem.shop.example.com是,同一组织mx.example.org: domain of bounce@em.shop.example.com designates 203.0.113.45 as permitted sender
DKIMpassshop.example.com是,完全相同s=s1
DKIMpassesp.example.net否s=esp2026
DMARCpassshop.example.com—p=REJECT sp=REJECT dis=NONE

投递路径(最早的一跳在上)

时间统一换成 UTC。延迟是距上一跳的时间,第一跳按 Date 字段算。

跳来自接收方协议TLS接收时间(UTC)延迟
1app.shop.example.com [192.0.2.18]esp.example.netESMTPSATLS2026-11-11 00:00:02 UTC距 Date +1 秒
2—filter.esp.example.netSMTP—2026-11-11 00:00:04 UTC+2 秒
3o1.em.shop.example.com [203.0.113.45]mx.example.orgESMTPSTLS2026-11-11 00:00:45 UTC+41 秒
4mx.example.org [198.51.100.25]mailstore.example.orgLMTP—2026-11-11 00:00:47 UTC+2 秒

关键字段

=?UTF-8?…?= 这类编码已解码成中文。

字段值
From北风商城 <news@shop.example.com>
Reply-To北风商城 <kefu@shop.example.com>
Toxiaoming@example.org
Subject您的双 11 订单已发货
DateWed, 11 Nov 2026 08:00:01 +0800
Message-ID<20261111000001.8341.4f1c@shop.example.com>
Delivered-Toxiaoming@example.org
List-Unsubscribe<https://em.shop.example.com/u/8341?t=Zx81>, <mailto:unsub-8341@em.shop.example.com>
List-Unsubscribe-PostList-Unsubscribe=One-Click
MIME-Version1.0
Content-Typemultipart/alternative; boundary="b1_4f1c"
DKIM-Signatured=shop.example.com · s=s1 · a=rsa-sha256 · c=relaxed/relaxed · h=6 · 2048 bit · t=2026-11-11 00:00:02 UTC
DKIM-Signatured=esp.example.net · s=esp2026 · a=rsa-sha256 · c=relaxed/relaxed · h=5 · 2048 bit · t=2026-11-11 00:00:02 UTC
全部在你的浏览器里计算。这里输入的任何内容都不会上传,TapCub 也不会保存。邮件头里有姓名、邮箱地址和 IP,所以也不会放进分享链接。

版本 v1.0更新于 更新记录

结果怎么看

邮件头能回答三个问题

慢在哪、是不是本人发的、还有什么不对劲。

慢在哪一跳?

每台经手的服务器都会在最上面加一行 Received。从下往上读就是投递路径,相邻两行的时间差就是在这一跳花的时间。每跳几秒很正常;几分钟通常是这台服务器在排队、做反垃圾扫描或灰名单。

SPF、DKIM、DMARC 过了吗?

SPF 看发件服务器是否被退信域名授权,DKIM 看某个域名的签名是否有效,DMARC 要求其中之一在和「发件人」地址对齐的域名上通过。DMARC 失败、对方策略又是 p=reject 或 p=quarantine,邮件就会进垃圾箱或直接消失。

对齐了吗?

邮件发送服务的退信域名过了 SPF、或者它自己的域名签了 DKIM,对 DMARC 都没用。必须有一个是发件人域名本身,或者和它属于同一个组织域(news.shop.example.com 和 shop.example.com 算同一个)。

还有什么不对?

Reply-To 指向别处、Message-ID 缺失或格式不对、From / Date 重复、某一跳没有 TLS。每条后面都写了违反的是哪条规则。

身份验证结果是收信服务器写下的。你自己邮箱服务商那一行以上的内容谁都能伪造,所以只信 authserv-id 是你自己服务商的那条 Authentication-Results。本工具不重新验签,也不查 DNS。

怎么用

三步

任何邮箱客户端的信头都能用。

  1. 1

    复制原文信头

    打开收到的那封邮件(不是「已发送」里的副本),用「显示邮件原文」「查看信头」「查看邮件源」复制。

  2. 2

    粘贴到这里

    路径、身份验证和发现立即出来,什么都不会发出去。

  3. 3

    处理失败项

    自己发的邮件:去 DNS 或邮件发送服务后台修 SPF、DKIM 或对齐。可疑邮件:DMARC 失败加上 Reply-To 指向别处,基本可以直接删掉。

规则

分析器读了哪些东西

每个字段按定义它的标准解析。

  • 字段和折行:RFC 5322 §2.2;日期 §3.3(含 EST、PST 等旧时区名);只能出现一次的字段 §3.6;Message-ID 格式 §3.6.4
  • Received:RFC 5321 §4.4 的 from / by / with / id / for;with ESMTPS 或 ESMTPSA 表示用了 TLS(RFC 3848)
  • Authentication-Results:RFC 8601,支持任意位置的注释和带引号的 reason=;ARC 副本按 RFC 8617
  • SPF 结果 RFC 7208,DKIM 标签 RFC 6376 §3.5,DMARC 对齐 RFC 7489 §3.1
  • 组织域用内置的常见二级后缀(com.cn、co.uk 等)近似,没有用完整的 Public Suffix List
能在邮件头里看到的 Gmail 发件要求(2026-11-10 核对)
要求所有发件人每天给 Gmail 发 5,000 封以上
SPF 和 DKIMSPF 或 DKIM 之一两个都要
DMARC—必须,p=none 也可以
发件人与 SPF 或 DKIM 对齐—必须
传输用 TLS必须必须
符合 RFC 5322、有效的 Message-ID必须必须
一键退订(RFC 8058)—营销和订阅类邮件
实际例子

读懂示例里的发货通知

默认示例的信头里能看出这些。

发货通知逐跳分析
跳来自 → 接收方延迟含义
1app.shop.example.com → esp.example.net(ESMTPSA)距 Date +1 秒商城系统把邮件交给邮件发送服务,带登录认证、走 TLS
2(内部)→ filter.esp.example.net+2 秒发送服务自己的过滤环节
3o1.em.shop.example.com → mx.example.org(ESMTPS)+41 秒等得最久:在发送服务排队后才投递
4mx.example.org → mailstore.example.org(LMTP)+2 秒投进收件箱;机器内部投递,不评 TLS

注意前两跳写的是 +0000、后两跳写的是 +0800,换成 UTC 后再相减,结果才对。身份验证:SPF 在 em.shop.example.com 上通过,DKIM 在 shop.example.com 和 esp.example.net 上都通过;DMARC 通过,因为 shop.example.com 和发件人完全相同(DKIM),em.shop.example.com 和它同属一个组织域(SPF)。一键退订也设好了。

常见错误

看邮件头时容易读错的地方

手工看信头时的四个坑。

从上往下读

最新的 Received 在最上面,发件方在最下面,从下往上读。

每条结果都当真

发件方可以在发信前自己写一行 Authentication-Results。只有你自己邮箱服务商加的那条算数。

通过了但没对齐

发送服务的域名过了 SPF,对 DMARC 不够。用自己的域名配 DKIM,或者设置自定义退信域名。

时区没换算就相减

国内服务器常写 +0800,国外的写 +0000 或 -0800。直接拿时刻相减会差出几个小时;时钟本身也会差几秒,出现负数是时钟偏差。

常见问题

邮件头分析常见问题

还有其他问题?

直接和 TapCub 团队聊聊——工作日通常几小时内回复。

怎么查看邮件头(邮件原文)?

QQ 邮箱:打开邮件 → 更多 → 显示邮件原文。网易 163 / 126 邮箱:更多 → 查看信头。Gmail:⋮ → 显示原始邮件。Outlook 网页版:⋯ → 查看 → 查看邮件源;Outlook 桌面版:文件 → 属性 → Internet 标头。复制第一个空行之前的全部内容。

邮件头里的 Received 怎么看?

从下往上看。最下面的 Received 是最先收到邮件的服务器,往上依次是下一跳,最上面是你自己的邮箱服务商。每一行写了从哪台服务器来、哪台服务器收、用什么协议、什么时间。

邮件头里的 SPF、DKIM、DMARC 是什么意思?

SPF:发件服务器是否被退信域名授权。DKIM:某个域名给邮件签了名,且邮件没被改过。DMARC:SPF 或 DKIM 在和「发件人」地址对齐的域名上通过,外加发件方声明的处理策略(none、quarantine、reject)。

SPF 通过了,为什么邮件还进垃圾箱?

常见原因:SPF 是在邮件发送服务的域名上通过的,没和你的发件人域名对齐,DMARC 失败;没有 DKIM 或用的是发送服务的域名签名;群发邮件没有一键退订;或者内容和发信信誉问题。前三个都能在信头里看出来。

邮件为什么延迟了?

在投递路径表里找延迟最大的那一跳。发件方那边慢,一般是排队或限速;收件方那边慢,一般是反垃圾扫描或灰名单(暂时拒收陌生发件人、等对方重试)。出现负数或奇怪的数字,是服务器之间时钟不一致。

把邮件头贴到这里安全吗?

邮件头里有姓名、邮箱、IP 地址,有时还有追踪编号。这个页面在浏览器里解析,不上传,也不放进分享链接。截图给别人看之前,仍然建议先把不想公开的部分打码。

能验证 DKIM 签名吗?

不能。验签需要完整的正文和 DNS 里的公钥。这里报告的是你的邮箱服务商在 Authentication-Results 里记下的结论,并读出签名的标签(域名、选择器、算法、密钥位数、过期时间)。

更新记录

更新记录

这个工具的新功能、修复和数据更新,最新的在前。

  1. · v1.0

    首次上线首次上线。

缺功能或发现错误?告诉我们,常被提到的会排进下次更新。 全部工具更新

下一步

在访客需要发邮件之前就回答他

TapCub 在线客服在访客还停留在页面上时就能回答,来源和正在看的页面就在对话旁边。

看清数据,找到增长。

每一次点击,都有数据依据。装好一行代码,1 分钟看到第一批数据。

无需信用卡 · 统计与客服都有免费版 · 统计无 Cookie