On Wed, 5 Jul 2006, christian meutes wrote:

> They can only be identified by the lookup on the MX-record.

Your original attempt, namely

remote_smtp:
 driver = smtp
 hosts_override = true
 hosts = ${if eq{$host}{10.10.10.10}{$host}{172.20.20.20}}

Doesn't work because $host is not set at this point. But if you can 
somehow identify the domains, a special transport with hosts_override 
might do the trick. One way could be to do your own DNS lookups using 
dnsdb, as suggested already.

Here's an evil idea: Set 

extra_local_interfaces = 10.10.10.10

Then add

self = pass
pass_router = xxxx

to the dnslookup router. Then add, at the very end of your routers

# Reject anything that gets this far
fail:
  driver = redirect
  data = :fail: Unknown recipient
  
xxxx:
  driver = accept
  transport = xxxx
  
and then a suitable xxxx transport with a fixed host.

WARNING: This assumes that no other domain that hits the dnslookup
router is going to route to a local IP.

This is probably even more evil than using translate_ip_address.

-- 
Philip Hazel            University of Cambridge Computing Service
Get the Exim 4 book:    http://www.uit.co.uk/exim-book

-- 
## List details at http://www.exim.org/mailman/listinfo/exim-users 
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://www.exim.org/eximwiki/

Reply via email to