[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#526823: libc6 2.9-9 broke DNS resolver again



On Mon, May 04, 2009 at 09:59:22PM +0200, Luca Tettamanti wrote:
> On Mon, May 4, 2009 at 6:45 AM, Aurelien Jarno <aurelien@aurel32.net> wrote:
> > On Sun, May 03, 2009 at 08:54:07PM +0200, Luca Tettamanti wrote:
> >> Package: libc6
> >> Version: 2.9-9
> >> Severity: normal
> >>
> >> Hello, I was affected by the resolver bug that was solved in 2.9-7; as of 2.9-9
> >> the resolver stopped working again. The automatic workaround that is mentioned
> >> in the changelog is not working, and "single-request" in resolv.conf doesn't
> >> seem to have any effect either.
> >>
> >> Here's a dump of the resolver trying to get the address of google.com:
> >>
> >> 14:11:00.754265 IP (tos 0x0, ttl 64, id 45448, offset 0, flags [DF], proto UDP (17), length 60)
> >>     10.0.0.3.60486 > 10.0.0.138.53: [udp sum ok] 39108+ A? www.google.com. (32)
> >> 14:11:00.754303 IP (tos 0x0, ttl 64, id 45449, offset 0, flags [DF], proto UDP (17), length 60)
> >>     10.0.0.3.60486 > 10.0.0.138.53: [udp sum ok] 48015+ AAAA? www.google.com. (32)
> >> 14:11:00.759312 IP (tos 0x0, ttl 64, id 1324, offset 0, flags [none], proto UDP (17), length 60)
> >>     10.0.0.138.53 > 10.0.0.3.60486: [udp sum ok] 48015 NotImp q: AAAA? www.google.com. 0/0/0 (32)
> >> 14:11:00.817710 IP (tos 0x0, ttl 64, id 1325, offset 0, flags [none], proto UDP (17), length 144)
> >>     10.0.0.138.53 > 10.0.0.3.60486: 39108 q: A? www.google.com. 5/0/0 www.google.com. CNAME www.l.google.com.[|domain]
> >>
> >> The DNS server (it's my ADSL router) responds NotImp to the AAAA query (it does
> >> not support IPv6). The reply (CNAME) to the A query seems correct though.
> >>
> >
> > Could you please try the glibc from http://temp.aurel32.net/glibc-test/ ?
> > I have backported a few more patch from upstream, but I have no way to
> > know if they change something or not.
> 
> The option single-request works, the automagic workaround does not,

That's a good news.

> i.e. I always see the two requests going out in parallel.
> Actually I'm not sure I understand how it's supposes to work: if the
> first request fails usually the caller gives up, no?

The first request done by a program should timeout, and the second
request by the same program should then be done sequentially, like when
"single-request" is set.

-- 
Aurelien Jarno	                        GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net



Reply to: