如何禁用特定域的 Sendmail CNAME 扩展(但不禁用全局扩展)?

如何禁用特定域的 Sendmail CNAME 扩展(但不禁用全局扩展)?

我遇到一个由于“分割 DNS 视图”导致的问题,其中电子邮件在主机上生成并通过智能主机(中继)发送到我无法控制的外部系统(业务合作伙伴)。

生成服务器可以访问远程域的内部 DNS,但看不到特定域名 (example.com) 的 MX 记录,而是解析 CNAME (example.com. CNAME sub.example.com.),解析 CNAME 目标列出的 MX 记录 (sub.example.com. IN MX 10 mail.sub.example.com.),并将电子邮件传递给智能主机。

智能主机具有远程系统 DNS 区域的“外部”视图,其中 example.com有一个 MX 记录(example.com. IN MX 10 mail.example.com.)尝试通过查找 sub.example.com 的 MX 来发送电子邮件,失败并拒绝该电子邮件。

  • 业务合作伙伴可以在其内部 DNS 视图中发布 MX 记录(例如 example.com),这样我的服务器就不会进行 CNAME 扩展,并将邮件传递到智能主机而不进行更改[电子邮件保护][电子邮件保护]

  • 我可以通过设置来配置生成 sendmail 不进行 CNAME 扩展 confDONT_EXPAND_CNAMESsendmail.org 文档),但这可能会对其他领域产生难以预料的影响。

    有没有办法做到这一点仅有的example.com 电子邮件?

答案1

您可以使用本地网络配置

LOCAL_NET_CONFIG
R$+ <@ sub . example . com . > $*      $#smtp $@ [ smart.host.name ] $: $1 < @ example.com . > $2

相关内容