What algorithm does Windows use to decide which DNS Server it will query in order to resolve names?
Let's say I have several interfaces, all active, some with no dns server specified, some told to determine it automatically, and some with it specified manually (in interface ipv4 AND interface ipv6).
I'm asking for an answer to this general question hoping that I know how to solve a more specific problem in Windows Vista – I have two interfaces, one a lower metric and a DNS server specified manually. nslookup uses THIS DNS server and resolves the names correctly. However, all other applications fail to resolve the name unless I manually specify a DNS server for the other interface, which the applications then use. nslookup also uses the DNS server specified for this other interface once it is specified.
Thanks
Best Answer
If I'm not mistaken, it's determined by the NIC binding order in the Advanced Settings in the network connections folder. You can verify it by changing the binding order of the various NIC's and running nslookup as a test.
To expand on my answer, citing the article that Evan linked, here is an excerpt from said article:
The preferred adapter in step 1 being the adapter that's listed first in the binding order.