>-----Message d'origine-----
>De : [email protected]
>[mailto:[email protected]]de la part de Davide Libenzi
>Envoye : dimanche 7 novembre 2010 21:27
>A : XMail Users Mailing List
>Objet : Re: [xmail] problem with mx ip selection on retries
>
>
>On Wed, 3 Nov 2010, [email protected] wrote:
>
>> >-----Message d'origine-----
>> >De : [email protected]
>> >[mailto:[email protected]]de la part de Davide Libenzi
>> >Envoye : mercredi 3 novembre 2010 03:46
>> >A : XMail Users Mailing List
>> >Objet : Re: [xmail] problem with mx ip selection on retries
>> >
>> >
>> >On Tue, 2 Nov 2010, [email protected] wrote:
>> >
>> >>
>> >> Hello Davide
>> >>
>> >> I found an problem in xmail when re-trying to connect to mx
>> >with multiple
>> >> ips
>> >>
>> >> Here is a sample :
>> >> Assuming domain XX.com have this dns setup
>> >>
>> >> xx.com    mx 10   mx10.xx.com
>> >> xx.com mx 20      mx20.xx.com
>> >>
>> >> mx10.xx.com       A       10.10.10.1
>> >> mx10.xx.com       A       10.10.10.2
>> >> mx10.xx.com       A       10.10.10.3
>> >>
>> >> mx20.xx.com       A       20.20.20.1
>> >> mx20.xx.com       A       20.20.20.2
>> >>
>> >> supposing xmail have now to send a mail @xx.com
>> >> on first try it use mx10.xx.com at 10.10.10.1 : now the tcp
>> >connection don't
>> >> work
>> >> then os same first try xmail use mx20 at 20.20.20.2 :
>> >suppose tcp connection
>> >> don't work too !
>> >>
>> >> What i see in a trace is that for ALL the others retries for
>> >this mail,
>> >> xmail retries ONLY on SAME ips, 10.10.10.1 and 20.20.20.2
>> >> It never retry on others mx's ips !! And because there was
>> >no response from
>> >> these two ips, mail bounced back to sender after all
>> >possible retries :-/
>> >> (i checked the others ips, they responded correctly :-/ but
>> >xmail never
>> >> tried them ...)
>> >>
>> >> I think this is a major bug :(
>> >
>> >Does not look like.  XMail would cache (in the MX cache)
>the *names*,
>> >which are mx10.xx.com and mx20.xx.com (and, for the duration
>> >of the TTL).
>> >Then the names are resolved to IP addresses using OS
>specific library
>> >calls (getaddrinfo()).
>> >
>>
>> So, I don't understand why using nslookup on the xmail server itself
>> resolving mx10.xx.com i get all the mx10 ips values round robined :
>> nslookup mx10.xx.com
>>      10.10.10.2      10.10.10.3      10.10.10.1
>> another immediate nslookup mx10.xx.com
>>      10.10.10.3      10.10.10.1      10.10.10.2
>> another
>>      10.10.10.1      10.10.10.2      10.10.10.3
>>
>> Notice that in the real domain case the dns records default
>ttl was 2 hours,
>> no ttl specified in the mx records (so default 2 hours) and
>none in the A
>> records too (so default 2 hours)
>>
>> With xmail retry schedule configured with Qt 300 Qi 1 Qr 10 the retry
>> schedule was :
>> 01      send-time = 0      (00:00:00)   next-try = 300    (00:05:00)
>> 02      send-time = 300    (00:05:00)   next-try = 600    (00:10:00)
>> 03      send-time = 900    (00:15:00)   next-try = 1200   (00:20:00)
>> 04      send-time = 2100   (00:35:00)   next-try = 2400   (00:40:00)
>> 05      send-time = 4500   (01:15:00)   next-try = 4800   (01:20:00)
>> 06      send-time = 9300   (02:35:00)   next-try = 9600   (02:40:00)
>> 07      send-time = 18900  (05:15:00)   next-try = 19200  (05:20:00)
>> 08      send-time = 38100  (10:35:00)   next-try = 38400  (10:40:00)
>> 09      send-time = 76500  (21:15:00)   next-try = 76800  (21:20:00)
>> 10      send-time = 153300 (42:35:00)   next-try = 153600 (42:40:00)
>>
>> So after retry 05 the next retry is more than 2 hours later,
>so chance to
>> get same lookups in same order for mx10 and simutanenously
>the same ip for
>> mx20 seems minimal or very 'bad' coincidence.
>> And notice that exact same think occured for all mails for
>this domain. One
>> day more than 20 mails was in xmail queue for retries to
>this domain, and
>> all was blocked by same mx's not responding 'bad' ip ! very
>bad 'chance' to
>> get same ips :/
>>
>> The dns server is a bind 9 server on same machine, the xmail
>use it with
>> smartdnshost entry in server.tab
>> Trying with no smartdnshost didn't change anythink, nor
>changing local dns
>> address to another 'external' dns server with or without
>smartdnshost entry
>> in xmail.
>> In all configurations, nslookups allways returned the mx ips
>in round robin
>> manner even if done at less than the dns entry ttl (here 2
>hours) so how to
>> explain xmail 'use' the same IP ?
>>
>> Do you think OS getaddrinfo (here win32 windows 2000 sp4
>patched) return the
>> same think in same order (sorting them and returning only
>the first ip) ?
>> Supposing nslookup and dig don't use getaddrinfo but use direct dns
>> connections (and i think it is), how to test OS getaddrinfo ?
>
>I think I found it.
>Friggen getaddrinfo() sort results returned by the system DNS servers,
>instead of returning them as in response order. Duh!
>Need to look into fixing this ...
>
>
>
>- Davide
>

Good news :)
Waiting for an xmail 'workaround' to getaddrinfo sorted returns :)

PS : If I understood, xmail actualy directly acquire MX entries doing direct
dns connections queries to dns servers (using or not smartdnshost), so why
not use same method to acquire A entries (finaly completely bypass any OS
dns/resolvers routines calls that could return not consistently responses
accross os platforms and versions) ?

Regards
Francis

_______________________________________________
xmail mailing list
[email protected]
http://xmailserver.org/mailman/listinfo/xmail

Reply via email to