Default number of dns retries doubled
Carlos O'Donell
carlos@systemhalted.org
Fri Aug 16 14:28:00 GMT 2013
On Fri, Aug 16, 2013 at 7:39 AM, Ángel González <keisial@gmail.com> wrote:
> resolv.conf(5) contains:
>>
>> attempts:n
>> sets the number of times the resolver will send
>> a query to its name servers before giving up and returning an error to the
>> calling application. The
>> default is RES_DFLRETRY (currently 2, see
>> <resolv.h>). The value for this option is silently capped to 5.
>
>
> My /usr/include/resolv.h does indeed contain
>>
>> # define RES_DFLRETRY 2 /* Default #/tries. */
>
>
> /etc/resolv.conf only contains two nameserver lines.
>
> However, traffic sniffing shows 8 dns requests before giving up (4 to each
> nameserver).
>
> And a simple program confirms it:
>>
>> #include <resolv.h>
>>
>> int main() {
>> res_init();
>> printf("Timeout: %d\n", _res.retrans);
>> printf("Attempts: %d\n", _res.retry);
>> return 0;
>> }
>
>
> Output:
>>
>> Timeout: 5
>> Attempts: 4
>
>
> Any idea for this discrepancy?
A lot of reasons...
Is it issuing A and AAAA requests at the same time?
Are you requesting an FQDN and does the resolver have to go through
some redirection?
Cheers,
Carlos.
More information about the Libc-help
mailing list