From:.*@Host1.com
からsmtp.server1.com
までのメールと、From:.*@Host2.com
からsmtp.server2.com
までのメールをルーティングしたい。
今のところ、dpkg-reconfigure exim4-config
に行update-exim4.conf.conf
が含まれるように、dc_smarthost='smtp.server1.com::587'
でスマートホストを構成しています。つまり、すべてがsmtp.server1.com
を経由します。
設定ファイルのsmarthost:
の定義の直前に、senders = .*@Host2.com
を設定して別のルーターを追加してみました
smarthost_server2:
debug_print = "R: smarthost_server2 for $local_part@$domain"
driver = manualroute
domains = ! +local_domains
transport = remote_smtp_smarthost
senders = .*@Host2.com
route_list = * smtp.server2.com byname
Host_find_failed = ignore
same_domain_copy_routing = yes
no_more
ただし、eximはsmtp.server1.com
を介してすべてをルーティングします。 senders
条件を正しく使用していますか?
AFAIU、これは、メールを持っている人が.@ google.com and。 @ gmail.comで、@ gmail.comのメールヘッダーに自分がもグーグルの従業員なので、ルーティングは異なるはずです。
はい、分かりました。 senders
は、/ etc/mailnameが提供するものであり、From:のドメイン部分ではありません。
次の作品:
smarthost_server2:
debug_print = "R: smarthost_server2 for $local_part@$domain"
driver = manualroute
domains = ! +local_domains
transport = remote_smtp_smarthost
condition = ${if match_domain{${domain:$h_From:}}{smtp.server2.com}{yes}{no}}
route_list = * smtp.server2.com byname
Host_find_failed = ignore
same_domain_copy_routing = yes
no_more
From:
ヘッダーからドメイン名を抽出し、それをsmtp.server2.com
と比較する条件に注意してください。