我正在设置 Postfix 以将电子邮件从 domaina.com 路由到网关 A,但如果电子邮件包含任何其他域,我希望将其发送到网关 B。
我想知道是否有可能在传输图中实现此逻辑。以下是我的想法:
abc.com smtp:gateway1.server.123.com
(abc.com + "*") smtp:obgw.123.com
"*" smtp:obgw.123.com
我确实想避免将电子邮件流量分成两部分,尤其是当 obgw.123.com 也可以传送到 abc.com 帐户时。
如果您有任何见解或解决方案,我很乐意听取您的意见。
非常感谢,Dub
答案1
# Route all internal mails to local transport
yourdomain.com :
# Route domain A -> gateway A. [] indicates that MX lookup is disabled.
domainA.com : smtp:[gatewayA.com]
# Route all other domains -> gateway B.
* : smtp:[gatewayB.com]
答案2
我认为这是不可能的。路由决策要么是默认的,要么是每个收件人的,而不是基于收件人的组合。您可以做的是通过网关 A 发送 domaina.com 收件人,通过网关 B 发送其他收件人。由于“其他收件人”定义不明确,因此您应该将网关 B 配置为默认网关,并为域 A 添加自定义传输,例如
在/etc/postfix/传输:
domaina.com smtp:[gatewaya]
/etc/postfix/main.cf:
...
relayhost = [gatewayb]
transport_maps = hash:/etc/postfix/transport
...