邮件标题中的单引号电子邮件地址导致问题

邮件标题中的单引号电子邮件地址导致问题

我们的一位用户收到了一封电子邮件,其中的“收件人:”标题中包含许多单引号地址(以及其他地址),如下所示:

To: Some One <[email protected]>,
    "[email protected]" <[email protected]>,
    "'[email protected]'" <'[email protected]'>,
    "'[email protected]'" <'[email protected]'>,

当我们的用户尝试回复全部时,该电子邮件被我们的邮件服务器拒绝,并响应“501 5.1.3 收件人地址语法错误”。

我对 RFC 5322(取代了 RFC 2822 和 822)的理解是,单引号() 在电子邮件地址的本地部分有效(“@”之前);例如,作为地址中的撇号“o'[电子邮件保护]“。但是,它不是用于引用整个地址的有效字符,因此上述地址在语法上并不正确,并且我们的邮件服务器拒绝回复是正确的。

我有几个问题:

  1. 我是否正确地理解这些地址是无效的?
  2. 哪个系统有责任防止发送标头中含有无效地址的邮件?发件人的用户代理(Outlook 等)?用户代理将邮件提交到的邮件服务器?我们的邮件服务器?
  3. 我怀疑发送 SMTP 服务器是 MS Exchange;是否存在允许此类地址的已知问题?

根据这些问题的答案,我预计我会提交一个或多个错误报告(提交给供应商和/或发送邮件服务器的管理员),并建议我们的用户在回复之前删除单引号。针对这种情况还有其他建议吗?

答案1

据我所知,<> 内的地址完全不能被引用,仅可引用自由格式的评论

我有很多答案

  1. 是的,电子邮件 3 和 4 无效
  2. 最佳情况是发送 MUA(即使“以这种形式收到”,也不能产生无效的标头)。第一个 MTA 也可能(我已重读正确的动词)检查收到的数据的有效性并做出相应反应

相关内容