[exim] helo_data with interface = with multiple IP's

Top Page
Delete this message
Reply to this message
Author: J-P Human
Date:  
To: exim-users
Subject: [exim] helo_data with interface = with multiple IP's
Hi

I'm having trouble getting Exim (4.69) to use the correct outgoing helo
string when sending via specific IP Addresses.

My system has 2 IP Addresses, 1.2.3.4 and 1.2.3.5 (for this example)

I want the helo name for 1.2.3.4 to be hostname.1234 and for 1.2.3.5 to
be hostname.1235 when Exim is told to send out via that IP.

I have in my config:

#Global section
smtp_active_hostname = ${if eq{$interface_address}{1.2.3.5}\
{hostname.1235}{hostname.1234}}

#Transports
remote_smtp:
driver = smtp
interface =
${lookup{$sender_address_domain}lsearch{/etc/exim4/interfaces}
{$value}{213.133.123.5}}
helo_data = ${if eq{$interface_address}{1.2.3.5}\
{hostname.1235}{hostname.1234}}

The Global section seems to work fine and the interface lookup in the
remote_smtp transport also works fine, however the helo_data does not
return the desired string it always returns hostname.1234 even if the
sender domain is setup in /etc/exim4/interfaces.

I have spent a fair amount of time trying various options so any help
would be appreciated. I do have a work around using multiple transports
and routers but it seems a bit excessive.

Thanks and Regards
J-P Human