设置了邮箱自动转发到另一个邮箱,收件人收不到或者邮件进了垃圾箱,为什么?怎么修?

57 设置了邮箱自动转发到另一个邮箱,收件人收不到或者邮件进了垃圾箱,为什么?怎么修?
原因

邮件自动转发(Forwarding)本质上用转发方服务器的 IP 重新发送邮件——转发方不是你(原始发件人),所以:
(1) SPF 失败:转发服务器的 IP 不在你域名的 SPF 允许列表里——别想了,不可能把所有转发服务的 IP 都加进去。
(2) DMARC 生效:如果你域名的 DMARC 策略是 p=reject,收件方看到 SPF fail → 直接拒绝——邮件不会进垃圾箱、不会收到退信、直接消失了(静默丢弃)。
(3) 个别场景 DMARC p=quarantinep=none:邮件可能进垃圾箱(看收件方策略)。

典型场景:老王用 Gmail → 设置自动转发到企业邮箱 → 同事发邮件到老王 Gmail → Gmail 转发到企业邮箱时 SPF 失败 → 企业邮箱拒收/垃圾箱。

操作

根本解决方案是 SRS(Sender Rewriting Scheme)——转发方重写 MAIL FROM 地址,把你的地址封装后用自己的域重新发送。
1. 自建转发:Postfix 安装 postsrsd(pip/apt install postsrsd→配置 /etc/postsrsd.conf
2. Gmail → Gmail 转发:同 Gmail 内部转发不受影响
3. Gmail → 第三方:部分邮件可能丢失,建议改用 Gmail 收件方直接 POP3/IMAP 拉取而非自动转发
4. 商业转发服务:ForwardEmail.net、Cloudflare Email Routing 等有内置 SRS
5. 不可控转发方时的替代方案:请收件方把你转发后的来源地址加入白名单(绕过 SPF 检查)
注意:Gmail 即使开启了转发,转发的邮件不带原始 DKIM 签名,DMARC 也会受影响。

参考:RFC 8617(ARC 转发认证协议)· SRS 设计文档 · Gmail Help