How can I get exim routers to reliably distinguish between mail destined for
the local network and mail for the internet?
Suppose exim is attempting to route an address user1@Xe. If this
address were looked up in /etc/hosts, exim would find that the full address
is, say, user1@??? with IP=192.168.1.2.
I have tried to use:
lanroute:
driver = lookuphost
domains = 192.168.0.0/16
transport = remote_smtp
gethostbyname
but, AFAIK, exim doesn't check the IP address of the host until after the
router accepts the address. I also tried
lanroute:
driver = lookuphost
domains = *.internal
transport = remote_smtp
gethostbyname
but this fails if exim is passed an address that is not fully canonicalized,
apparently because exim does not check with etc/hosts until *after* the
router accepts or rejects the address.
How do I force the /etc/hosts lookup to happen before the routers
make their decisions? Or, is there a better way for exim to distinguish local
network domains from internet domains?
Thanks,
John