IP/DNS DC Locator Algorithm

The IP/DNS DC Locator algorithm is executed in the context of the NetLogon service, (typically) running on the client. The algorithm, shown in the flowchart, works as follows:

Call DnsQuery specifying one of the criteria specific DNS host names.

If IP is not supported or DNS is not supported, return from the algorithm indicating so.

If the specified name cannot be found (perhaps because the domain has been renamed), return from the algorithm indicating so.

Upon retrieving the list of DCs from DNS, the client will ping the various DCs in weighted random order. After each ping, the client will wait 1/10th second for a response to the ping. Choosing the DCs at random provides a first level of load balancing. Doing multiple pings in quick succession ensures the discovery algorithm terminates in a reasonable amount of time. The pinging continues until all the returned DCs have been tried or until positive response has been received from the pinged DC, whatever comes first.

When a DC responds to the ping, the parameters supplied in the response is compared to the parameters required by client. If the information mismatches, the response is ignored.

The first DC to respond to a ping and satisfy client’s requirements is used by the client.

Windows 2000 White Paper

34

Page 40
Image 40
Microsoft windows 2000 DNS manual IP/DNS DC Locator Algorithm