[Exim] @mx_any/ignore & route_list interpretation

Top Page
Delete this message
Reply to this message
Author: Eli
Date:  
To: exim-users
Subject: [Exim] @mx_any/ignore & route_list interpretation
2 questions... :)


I don't know if this is perfectly within the expected uses of the new
/ignore feature for @mx_any or not so just checking:

domainlist treat_as_local       = @mx_any/ignore=!10.1.0.200


I've got that to match domains that ONLY have an mx record that resolves to
10.1.0.200. I've tested and it works as I expected it to, but I just want
to make sure I didn't stumble upon a hidden use that might get "broken" in
later versions because it's not an expected use :)


My 2nd question is with regards to route_item and how it's items are
expanded. I read the documentation and for the most part it mentions that
route_list is to be a list of DOMAIN NAMES that get resolved to get the IP
addresses. However, a few places mention that it can also be an IP address
(which is what I'd prefer to use).

I have it set to IP addresses right now as you can see from the debug output
below, but I'm wondering if the attempted DNS lookups it's doing on the IPs
is intentional, or if I should really have domain names rather than IP
addresses. In the end it obviously fails the DNS lookups, but I'm wondering
if they're taking up time when they should/could be skipped completely since
they're not domain names. I didn't read about any options to *disable* dns
lookups for the entries in a route_list, so...

17036 manual_address router called for test@???
17036 domain = example.fake
17036 route_item = * 10.1.0.100:10.1.0.101:10.1.0.102:10.1.0.103 randomize
17036 example.fake in "*"? yes (matched "*")
17036 original list of hosts = "10.1.0.100:10.1.0.101:10.1.0.102:10.1.0.103"
options = randomize
17036 expanded list of hosts = "10.1.0.100:10.1.0.101:10.1.0.102:10.1.0.103"
options = randomize
17036 set transport manual_delivery
17036 finding IP address for 10.1.0.103
17036 calling host_find_byname
17036 10.1.0.103 in "0.0.0.0 : 127.0.0.0/8"? no (end of list)
17036 10.1.0.103 in hosts_treat_as_local? no (end of list)
17036 fully qualified name = 10.1.0.103
17036 gethostbyname looked up these IP addresses:
17036 name=10.1.0.103 address=10.1.0.103
17036 finding IP address for 10.1.0.101
17036 calling host_find_byname
17036 10.1.0.101 in "0.0.0.0 : 127.0.0.0/8"? no (end of list)
17036 10.1.0.101 in hosts_treat_as_local? no (end of list)
17036 fully qualified name = 10.1.0.101
17036 gethostbyname looked up these IP addresses:
17036 name=10.1.0.101 address=10.1.0.101
17036 finding IP address for 10.1.0.100
17036 calling host_find_byname
17036 10.1.0.100 in "0.0.0.0 : 127.0.0.0/8"? no (end of list)
17036 10.1.0.100 in hosts_treat_as_local? no (end of list)
17036 fully qualified name = 10.1.0.100
17036 gethostbyname looked up these IP addresses:
17036 name=10.1.0.100 address=10.1.0.100
17036 finding IP address for 10.1.0.102
17036 calling host_find_byname
17036 10.1.0.102 in "0.0.0.0 : 127.0.0.0/8"? no (end of list)
17036 10.1.0.102 in hosts_treat_as_local? no (end of list)
17036 fully qualified name = 10.1.0.102
17036 gethostbyname looked up these IP addresses:
17036 name=10.1.0.102 address=10.1.0.102
17036 queued for manual_delivery transport: local_part = test
17036 domain = example.fake
17036 errors_to=NULL
17036 domain_data=NULL localpart_data=NULL
17036 routed by manual_address router
17036 envelope to: test@???
17036 transport: manual_delivery
17036 host 10.1.0.103 [10.1.0.103] rgroup=-2
17036 host 10.1.0.101 [10.1.0.101] rgroup=-2
17036 host 10.1.0.100 [10.1.0.100] rgroup=-2
17036 host 10.1.0.102 [10.1.0.102] rgroup=-2
17036 Attempting full verification using callout
17036 callout cache: disabled by no_cache
17036 interface=NULL port=25
17036 Connecting to 10.1.0.103 [10.1.0.103]:25 ... connected