james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Søren Hilmer ...@tefs.dk>
Subject Re: Regarding BUG 24885: RemoteDelivery only tries one of multiple A record
Date Thu, 04 Dec 2003 11:32:50 GMT
> What do you mean?  That you have this?
>         MX 10 mail
>  mail   A  aaa.bbb.ccc.ddd
>  mail   A  sss.ttt.uuu.vvv

Yes, this is exactly what I mean. Apparrently this is not an uncommon setup, 
and the current code will only try the aaa.bbb.ccc.ddd address.

> > I believe that I need to do a double loop in RemoteDelivery to solve this
> In my view, it should be done by our DNS lookup code.  See RFC 2821,
> section 5:
>    The destination host (perhaps taken from the preferred MX record) may
>    be multihomed, in which case the domain name resolver will return a
>    list of alternative IP addresses.  It is the responsibility of the
>    domain name resolver interface to have ordered this list by
>    decreasing preference if necessary, and SMTP MUST try them in the
>    order presented.
> So it is handling a multihomed destination that needs to be addressed.

Yes, that is exactly what needs to be addressed, the problem of doing it at 
the DNS lookup level (which I agree is the conceptually right thing to do) is 
that then the returned addresses (by the getMailServers call) bears no 
information to the original MX record, and the log-lines from RemoteDelivery 
gets more cryptic like:
James.Mailet: RemoteDelivery: Attempting delivery of Mail1056370039520 to ho
st [aaa.bbb.ccc.ddd] to addresses [xxx@mail]

where I would prefer:
James.Mailet: RemoteDelivery: Attempting delivery of Mail1056370039520 to ho
st mail at [aaa.bbb.ccc.ddd] to addresses [xxx@mail]

Now to achive both nice logging and handling of multihornedness.
I would (going back to the original question) either add a new method to 
MailetContext or use DNSServer directly in RemoteDelivery, the easiest (which 
is what I currently have done) is to add the MailetContext method, but 
unfortunately this is not just an addition to James but to the Mailet API as 
well. Not that this bothers me a lot, as additions of methods does not break 
backwards compatibility.


Søren Hilmer, M.Sc.
R&D manager		Phone:	+45 70 27 64 00
TietoEnator IT+		Fax:	+45 70 27 64 40
Ved Lunden 12		Direct:	+45 87 46 64 57
DK-8230 Åbyhøj		Email:	soren.hilmer <at> tietoenator.com

To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org

View raw message