可以将用于远程传送的电子邮件地址重写为使用 CName 吗?

可以将用于远程传送的电子邮件地址重写为使用 CName 吗?

我发现一个远程站点正在重写发给我们机器的电子邮件,以使用邮件发往的机器的 CName(例如[电子邮件保护]变成[电子邮件保护])。这是正确的行为吗?

如果是这样,是否可以通过添加 MX 记录或其他内容来避免这种情况?

答案1

是的,这种行为是错误的……但在 SMTP 中强制执行 RFC 标准是无望的。引用RFC 5321

查找首先尝试查找与名称关联的 MX 记录。如果找到 CNAME 记录,则处理结果名称就像最初的名字一样

但是,sendmail MTA 默认会重写收件人地址,这违反了 RFC。该nocanonify功能或DontExpandCnames选项可以解决这个问题……但是当您无法控制造成混乱的服务器时,您所能做的就是绕过它。

RFC 的措辞最初是RFC 2821,从 2001 年开始,但有趣的是,当前的 sendmail 文档DontExpandCnames 到今天说,引用

如果设置,则执行基于 DNS 的查找的 $[ ... $] 查找不会扩展 CNAME 记录。这目前违反了已发布的标准,但 IETF 似乎正在朝着使其合法化的方向发展。

相关内容