[Exim] host_accept_relay questions

Top Page
Delete this message
Reply to this message
Author: Chris
Date:  
To: exim-users
Subject: [Exim] host_accept_relay questions
Hello,

By default, most of our relay connections match via DNS. As such, my
host_accept_relay directive looks like:
host_accept_relay = *.domain.com : *.domain2.com : *.domain3.com :
*.domain4.com.

However, for circumstances beyond our control, several dozen IP addresses
that we need to permit relaying for have misconfigured DNS varying from
forward/reverse mismatches, to nonexistant DNS. The network blocks in
question include literally hundreds of blocks varying from /16s through
/32s. "Fix your DNS" isn't an option, as it's generally the fault of a
dialup pool that we have outsourced to a seperate vendor.

Ideally, I would like to maintain a list of these network blocks in a
seperate file, and only manage the DNS-based matched in my main
configuration file.

Is there a way to include/lsearch a file as one of the arguments to the
host_accept_relay directive? I realize the net<num>-<searchtype> directive
is available, but I would rather not have to specify 20 net<num>-dbm
directives for all the possibilities of significant bits we have. I have
tried:
host_accept_relay = *.dom1.com : *.dom2.com : /exim/iplist
and
host_accept_relay = *.dom1.com : *.dom2.com : lsearch;/opt/exim/iplist

But both result in
550 relaying to <address> prohibited by administrator (failed to find host
name from IP address)

I apologize in advance if I've completely misinterpreted or overlooked
something in the spec document, but would appreciate any tips.

Thanks.