Subject: Re: DNS servers on windows

Re: DNS servers on windows

From: Gisle Vanem <gvanem_at_broadpark.no>
Date: Tue, 23 Apr 2013 20:40:24 +0200

"Bert Belder" <bertbelder_at_gmail.com> wrote:

> Windows associates DNS server addresses with specific interfaces (weird, I
> know). When there are multiple network interfaces present (including virtual
> ones) it'll walk all of them and return all DNS servers configured for this
> interface, without filtering out duplicates. So yes, it's somewhat common.

Just to be clear. It's not Windows that does the walking. It is ares_init.c
(calling GetAdaptersAddresses in get_DNS_AdaptersAddresses) that is
walking over all adapters and extracting all DNS-server addresses [1] for
each iface. This growing list ('*outptr') could off-course contain duplicates
if 2 ifaces have >= 1 DNS-address(es) in common.

That's highly normal and probably as intended. But with virtual ifaces like
a VPN-adapter (potentially going up and down after cares gets initialised)
other unwanted effects could come into play. I'm not sure these cases could
(or should?) be accounted for.

[1] those who are up; i.e. with OperStatus == IfOperStatusUp.

--gv
Received on 2013-04-23