[Exim] Multiple smarthosts

Top Page
Delete this message
Reply to this message
Author: Robin Faichney
Date:  
To: exim-users
Subject: [Exim] Multiple smarthosts
I'd have thought this was a not uncommon situation, but I couldn't find
anything on it in the documentation or the list archive.

This is a dialup scenario using ppp, and fetchmail is used for incoming,
with which there's no problem. I use 2 ISP's, because one has no call
charge but is often busy, so the second is a fall-back.

My smarthost is set to ISP1, but if there's outgoing mail queued when
I connect to ISP2, it's bounced by ISP1, which only accepts mail over
its own connections. So as a temporary measure, I don't flush the exim
queue when I connect to ISP2, but that's frustrating, because incoming
works equally well with either.

So what I'd like to do is have alternative smarthosts, where the one to be
used is determined by which ISP I'm connected to.

I thought I'd cracked it, by using route_file instead of route_list,
setting search_type to lsearch, where the two files look like this:

*: <ISP1_smarthost> bydns_a

and

*: <ISP2_smarthost> bydns_a

and ip-up symlinks the route_file filename to the appropriate file for
the current connection. But that doesn't work. I got an error message
from my email client which I unfortunately did not note, but which seemed
to indicate that routing was thoroughly confused.

I'm hoping that I'm doing something obviously wrong here, in which case
the error message and further info wouldn't be required. Or maybe
there's another, better way of achieving the result I'm looking for.
Or should I just wait for ISP1 to get their act together and stop fobbing
me off with busy signals??

Oh, and this is exim v 3.12 #1 on a Debian GNU 2.2 system.

--
Robin Faichney