One nic is for the private internal network with active directory and the other nic is for the public internet.
The internal nic references an internal DNS server used by active directory. The external nic references our public DNS server which is used to resolve all of our dot com names for the world at large.
When I open a command prompt on the server and I enter "nslookup" it appears to default to the internal active directory DNS server on the internal IP.
What controls the order of which nic is polled first and responds with the DNS it has defined for it? I tried setting the interface metric to 1 and 2 and also to 2 and 1 and it didn't seem to have any affect at all. Is it the order of the PCI slots or just dumb luck?????
Regarding the interface metric...is it wise to manually set the priority for that route or should I just let the system choose via the "automatic" setting? I am wondering if there is any performance benefit to one versus the other? For example, my SQL server might benefit from a setting of 1 on the internal nic whereas the external nic could have a setting of 2 since its only used for ocassional remote access. Is my understanding of how that metric works correct or am I wasting time thinking about it?
The NIC has nothing to do with which server is chosen. It's pretty simple; when you define what DNS servers are going to resolve domains for that box, one goes on top. That one is checked first. Why not just make your internal server resolve/forward everything and remove the other from your list?
As for the routing question, it shouldn't make any appreciable difference. I'm assuming there's only one route that has a path to your internal network, so it will always get chosen regardless of the metrics. Your internet route is the default, and is always going to be a second choice since it applies only if there aren't any routes defined for the destination of a packet.
Regarding the DNS I just wanted to mention that its not quite that simple as being which DNS is on top. Neither is on top. For the sake of discussion lets assume that each NIC has ONE DNS defined. So there is no top and bottom. Somehow when you type in NSLOOKUP the OS chooses one of the NIC cards and responds with whatever DNS is attached to that NIC.
It's probably not a big deal but I was curious why one server will default to my external DNS and another server will default to the internal DNS -- yet both servers have their nic cards and dns entries set up identical.
Yea, I've never understood why Windows ties the DNS configuration to the NIC. They're not related in any way whatsoever. I'd recommend leaving one blank and only setting the servers on one NIC so that you can actually tell what's going on; I believe this still follows the normal routing rules and will work properly.
Otherwise you'll need to consult Microsoft. The behaviour is probably undocumented and non-deterministic, knowing them. If it's configurable, it's probably in netsh somewhere.