'allo,
I just wanted to update the mailing list, so that there is a record of
the solution to my problem in the archives. And also thank you to
both Philip Hazel and Peter Bowyer for their help.
Originally I had the following in my router section:
------ begin default setup ---------
begin router
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
# If the first host starts with '+', fallback on DEFER or FAIL.
# If the first host starts with '=', fallback on FAIL only.
# If neither, fallback on DEFER only.
# The first cases are Cygwin extensions for users with dynamic ip addresses.
# fallback_hosts = = : your.smart.host
no_more
# this was put in based on info from Peter Bowyer
virtual_aliases:
driver = redirect
domains = +virtual_domains
data = ${lookup {$local_part@$domain} lsearch {/etc/exim/virtual}}
system_aliases:
driver = redirect
allow_fail
allow_defer
data = ${lookup{$local_part}lsearch{/etc/aliases}}
# user = exim
file_transport = address_file
pipe_transport = address_pipe
userforward:
driver = redirect
check_local_user
# local_part_suffix = +* : -*
# local_part_suffix_optional
file = $home/.forward
# allow_filter
no_verify
no_expn
check_ancestor
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
localuser:
driver = accept
check_local_user
# local_part_suffix = +* : -*
# local_part_suffix_optional
transport = local_delivery
cannot_route_message = Unknown user
------- end default setup ---------
Using the above setup, all my email was getting frozen due to MX
records for my virtual domains pointing to the localhost. Based on Philip's
advice, I used the '-d' option, which took a while to understand what was
being said by Exim, and was able to see that the problem happened in
the 'dnslookup' router. Since 'dnslookup' also ends with a 'no_more'
statement, none of the other routers where getting tried. Ahh, yes, I
can see that removal of 'no_more' might seem to then be the logical
choice. Guess again.
The choice that is working for me is moving virtual_domains above
dnslookup. If the incoming email is going to one of my domains, why
bother doing the dnslookup ? and since mostly I will be receiving emails
for my domains, it doesn't make sense to have exim spend time using
the dnslookup router, only to have things fail (Programming 101 - make the
most common case be the first one in your case/switch/etc. clause). At
least that was my logic and justification for doing it that way. And it is
working.
Once again, thanks Peter and Philip for your help. Exim is not too
bad/intimidating once you get used to its way of doing things.
cheers,
mehul
> On Wed, 25 Aug 2004 mnsanghvi@??? wrote:
>
> > accept domains = +virtual_domains
> > #domains = +relay_to_domains
> > endpass
> > verify = recipient
> >
> > which caused an "unknown ACL modifier/option" error to get generated.
>
> # is a comment character only at the start of a line.
>
> > Now email is flowing, but I am back to the "lowest numbered MX record points
> > to local host" error message in exim_main.log
>
> Investigate the -bt and -bh and -d options for testing and debugging.
>
> --
> Philip Hazel University of Cambridge Computing Service,
> ph10@??? Cambridge, England. Phone: +44 1223 334714.