A bug reported by David Lutterkort...
The 'man resolv.conf' docs for 'nameserver' say
[quote]
nameserver Name server IP address
Internet address (in dot notation) of a name server that the
resolver should query. Up to MAXNS (currently 3, see <resolv.h>)
name servers may be listed, one per keyword. If there are multi-
ple servers, the resolver library queries them in the order
listed. If no nameserver entries are present, the default is to
use the name server on the local machine. (The algorithm used is
to try a name server, and if the query times out, try the next,
until out of name servers, then repeat trying all the name
servers until a maximum number of retries are made.)
[/quote]
While 'man dnsmasq' docs for 'strict-order' say:
[quote]
-o, --strict-order
By default, dnsmasq will send queries to any of the upstream
servers it knows about and tries to favour servers to are known
to be up. Setting this flag forces dnsmasq to try each query with
each server strictly in the order they appear in /etc/resolv.conf
[/quote]
So by default, the algorithm dnsmasq uses for DNS lookups is
a) Different from that use by GLibC
b) Wrong
Thus I think we should always use --strict-order when running dnsmasq. The
attached patch adds this
Dan.
--
|=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=|
|=- Perl modules:
http://search.cpan.org/~danberr/ -=|
|=- Projects:
http://freshmeat.net/~danielpb/ -=|
|=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|