Q0318 - Exim/exim GitHub Wiki
Exim won't route to a host with no MX record.
More than one thing may cause this.
-
Are you sure there really is no MX record? Sometimes a typo results malformed MX record in the zone file, in which case some name ers give a SERVFAIL error rather than NXDOMAIN. Exim has to treat as a temporary error, so it can't go on to look for address records. can check for this state using one of the DNS interrogation commands, as nslookup, host, or dig.
-
Is there a wildcard MX record for your domain? Is the
search_parents
option on in your dnslookup router? If the answer to these questions is "yes", that is the cause of the problem. When DNS resolver fails to find the MX record, it tries adding on your in ifsearch_parents
is true, and thereby finds your wildcard MX rd. For example: -
There is a wildcard MX record for *.a.b.c.
-
There is a host called x.y.z that has an A record and no MX record.
-
Somebody on the host m.a.b.c domain tries to mail to [[email protected]](mailto:[email protected]).
-
Exim calls the DNS to look for an MX record for x.y.z.
-
The DNS doesn't find any MX record. Because
search_parents
is true, it then tries searching the current host's parent domain, so it looks for x.y.z.a.b.c and picks up the wildcard MX record.
Setting search_parents
false makes this case work while retaining the
wildcard MX record. However, anybody on the host m.a.b.c who mails to
[[email protected]](mailto:[email protected]) (expecting it to go to
[[email protected]](mailto:[email protected])) now has a
problem. The widen_domains
option of the dnslookup router may be
helpful in this circumstance.