摘要
251对当前RCPT TO作出成功答复:服务器接收旧收件地址,并承担后续转送;551则永久拒绝它,由客户端决定是否尝试建议的新地址。- 后来的规范允许接收方用
250静默转送,也允许拒收方用550隐去替代地址,因为最终邮箱可能是隐私信息,甚至无法由发件人直接访问。 - 更正路径不是个人身份证明,更不是全网改名命令。要让它改变未来通讯录,还需要可信的服务器来源和通讯录所有者的另一次授权。
两台服务器知道同一件事
客户端向旧邮箱发送 RCPT TO。第一台服务器知道收件人已经搬走,于是回 251;第二台也知道,却回 551。若监控系统只显示“用户已迁移”,就丢掉了 SMTP 真正要传达的状态。
251 的 2xx 表示本次收件人步骤已经成功。服务器接过责任,客户端不能因为看见新地址就再发一份,否则可能重复投递。551 的 5xx 表示旧收件人没有被接受。客户端若不另行尝试或报告失败,邮件就没有下一位责任人。
替代地址可以一模一样,保管责任却完全相反。代码不是文案前缀,而是一笔交接账。
1982 年的双岔口
RFC 821 在 SMTP 的早期规范中直接定义了这对答复。场景是客户端给出的 forward-path 不正确,但接收服务器知道正确目的地;主机名、用户部分或两者都可能改变。
251 User not local; will forward 意味着服务器给出未来可参考的路径,同时承担当前邮件的送达责任。551 User not local; please try 意味着它拒绝这名收件人,发送端只能按提示重定向,或者把错误退还给原始用户。
这套设计没有声称“旧名字已被新名字取代”。它只回答当前事务中最紧迫的问题:谁拿着邮件,谁必须采取下一步。
当前接收不等于永久改联系人
客户端完全可以正确处理事务,却永远不保存新地址。收到 251 后,它把旧收件人记为已接受;收到 551 后,它可以创建一次新的收件尝试、让人确认,或者失败退出。
RFC 5321 特别说明,发出 251 或 551 的服务器不能假设客户端一定会更新地址信息,甚至不能假设客户端会把它展示给用户。SMTP 服务器有权说明自己这一步做了什么,却没有权让远方所有通讯录自动收敛。
这一区分也保护了时间尺度。一次 SMTP 会话几秒或几分钟就结束,联系人记录可能存在多年。短期证据不该默认获得长期写权限。
转送可以保持沉默
到了 RFC 2821 的年代,静默转送已很常见。企业用别名把稳定入口映射到内部位置;个人让旧邮箱转入新邮箱。最终地址可能暴露内部结构、私人账号,或者根本不能由外部发件服务器直连。
因此,规范把“谁负责”与“透露到哪里”拆开。接收并转送时,服务器可用 251 公开更正路径,也可只回普通 250。拒绝旧地址时,可用 551 给出建议,也可用 550 不披露具体目的地。RFC 5321 还要求实现提供限制这些透露型答复的配置能力。
于是出现四种诚实状态:接收并披露、接收但隐去、拒收并披露、拒收但隐去。隐私策略可以减少信息,不必伪造责任结果。
“已经搬走”也可以没有公开去处
RFC 3463 定义了 X.1.6:目标邮箱已经迁移,没有转送地址。当前 IANA SMTP 增强状态码注册表 仍把它列为永久失败状态。
“没有地址”可能指确实不存在,也可能是服务器不知道、无权泄露,或新地址只对内部转送系统可达。无论哪一种,客户端都不能从旧邮件头、Received 路径或第三方目录猜一个目标。迁移事实并不会自动制造一条可公开使用的路线。
RFC 3464 从投递状态通知的角度强调了同一边界:DSN 与普通邮件一样可以伪造;用户可能设置自动转送,却不愿透露最后地址。实现应当允许保护这项隐私。邮件可以继续前进,原发件人却不一定获得完整地图。
可由机器读取的提示,也能被机器滥用
大部分 SMTP 回复文本只是给人看,客户端通常按三位数字行动。251 与 551 中的更正路径是少数例外:若软件要利用它,就必须解析。结构化提示带来了自动化,也把一次伪造放大成未来路由风险。
RFC 5321 警告,在客户端自动修改今后行为——例如改写通讯录——之前,应确认服务器的真实性。中间人若替换新邮箱,不只可能截走当前邮件;一旦伪造更正被保存,以后每封邮件都会沿着假路径走。
即使服务器身份经过验证,证据仍有边界。它能证明哪台服务器说了这句话,不能证明新邮箱一定属于同一个人、迁移永远不回退,也不能证明服务器管理员有权改写用户的标准联系人。真实性是自动化的必要条件,不是个人命名权。
别名改变信封,而不是作者身份
RFC 5598 后来把互联网邮件角色拆得更清楚。普通 MTA relay 负责让邮件靠近目的地,不改变信封地址;alias 则由收件方控制,把邮件重新提交给一个或多个替代收件人,同时保留原邮件和通常的 reverse-path。
机械变化可能只有一个 RCPT TO,语义却很大:原收件人选择了另一名收件人。如果后续失败,报告仍可能回到不知道别名存在的原作者。转送由此重新分配运行责任,却不必改写可见 To、作者意图或 Message-ID。
所以,SMTP 更正地址不是互联网级改名。它是一家站点针对一个信封收件人的局部声明:我接收并转送,或者我拒绝并给你一条可能的路。
有用的更正,来自受限的权限
251 与 551 的历史把四件容易混在一起的事分开:接收、转送、披露、记住。前三项属于服务器和当前事务;最后一项属于通讯录所有者。
SMTP 可以帮助一封邮件跟上收件人的迁移,却没有宣称网络已经给这个人改名。后来即使隐私要求隐藏最终邮箱,这个责任结构仍然能够保留。
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
