There are other conditions to think about with this logic.
1. The host which has the mail queued for delivery is obviously in
the MX list.
2. Delivery to MX records should exclude all MX records of equal or
Thus if the config is correct, you would only be trying to deliver to the
lowest MX record which is either closer to the final host or is the static
IP of the final destination.
Assuming you are following this it should solve the problem you state does
Microsoft Exchange SMTP test lead
From: Albert Louw [mailto:albert(_dot_)louw(_at_)skynet(_dot_)xs4all(_dot_)nl]
Sent: Thursday, November 05, 1998 1:19 PM
Subject: Proposed change for RFC0974
After checking into some heavy problems with some commercial SMTP mailers
and SMTP proxy servers it was time to check on the standards and I found
that there's quite a problem there.
The world is filling up with mail servers that are only available thru
batched smtp (waiting to be released by the ETRN command in SMTP (rfc1985).
Looking at the below part of RFC0974 (last paragraph of page 5, inserted
below to make sure we're reading the same) a mailer MUST try the preference
with the lowest value (in 9916433467503f the batched SMTP cases the actual
host behind the dial-up link) and MAY try to go on to higher valued
preferences if the first attempt fails.
Since an average batched host link is down most of the time, the message is
almost doomed to be undeliverable, if a mailer only implements the 'MUST'
features. Although it's very easy to say that a 'off-line' mailhost should
not have an MX record, it's still the reality today and with many ISPs their
standard way of creating batched smtp.
So, in conclusion, I'd propose a change for the part that a server MAY try
the second host in line to MUST try at least the second host in line to
ensure that all batched SMTP mail is delivered.
Looking forward to your comment,
********* start quote **********
If the list of MX RRs is not empty, the mailer should try to deliver the
message to the MXs in order (lowest preference value tried first). The
mailer is required
to attempt delivery to the lowest valued MX. Implementors are
encouraged to write mailers so that they try the MXs in order until one of
the MXs accepts the
message, or all the MXs have been tried. A somewhat less demanding
system, in which a fixed number of MXs is tried, is also reasonable. Note
MXs may have the same preference value. In this case, all MXs at with a
given value must be tried before any of a higher value are tried. In
addition, in the
special case in which there are several MXs with the lowest preference
value, all of them should be tried before a message is deemed undeliverable.
********** end quote ***********
Research & Development Dept.
Azlan Network Services
SkyNet MailServer v1.00Beta
Copyright 1998 A.J. Louw. All Rights Reserved.