邮件发不出去/收不到,服务商说没问题,怎么自己快速定位到底谁的锅?(SMTP 诊断自救)

46 邮件发不出去/收不到,服务商说没问题,怎么自己快速定位到底谁的锅?(SMTP 诊断自救)
原因

邮件投递链路长(发件客户端→发件SMTP→可能中转→收件MX→收件反垃圾→收件箱),任何一个环节都可能出问题。服务商说"没问题"通常只看自己的发件队列没有堆积,不保证送达。

操作

1. 看发件日志:邮件状态是 Sent(已发出)、Deferred(排队等重试)、Bounced(退回)?Deferred 超过 4 小时=大概率最终进垃圾箱或硬退。
2. telnet 手工投递nslookup -q=mx <收件域名> 找到 MX 记录 → telnet 25 → 手工 EHLO/MAIL FROM/RCPT TO/DATA 发送一封简单测试邮件,记录每一步的响应码。
3. 读退信的 DSN 部分:退信(NDR/DSN)中 Remote-MTA 行告诉你最后是哪个服务器拒绝的。
4. MXToolbox Email Health:一次性检测 DNS/MX/SPF/DKIM/DMARC/黑名单/PTR 7 项。
5. mail-tester.com:发送一封测试邮件给随机地址,获取综合评分报告(内容/认证/黑名单/链接/HTML质量),目标 ≥9/10。
6. 数据说话:注册 Google Postmaster Tools + Microsoft SNDS,看实际送达率/垃圾邮件率——而不是"我觉得被拦了"。

参考:RFC 5321 §3.7 · RFC 3464 (DSN 格式) · MXToolbox · mail-tester.com