Configuring Subnet Prioritization

If the resolver receives multiple A resource records from a DNS server, and some have IP addresses from networks to which the computer is directly connected to, the resolver orders those resource records first. This reduces network traffic across subnets by forcing computers to connect to network resources that are closer to them.

For example, suppose that you have three Web servers that all host the Web page for www.reskit.com, and they are all located on different subnets. On the name server, you can create the following resource records:

www.reskit.com. IN A 172.16.64.11

www.reskit.com. IN A 172.17.64.22

www.reskit.com. IN A 172.18.64.33

When users query for www.reskit.com, the resolver puts first in the list IP addresses from networks to which the computer is directly connected. For example, if a user with the IP address 172.17.64.93 queries for www.reskit.com, the resolver returns the resource records in the following order:

www.reskit.com. IN A 172.17.64.11

www.reskit.com. IN A 172.16.64.22

www.reskit.com. IN A 172.18.64.33

Subnet prioritization prevents the resolver from using the round robin feature, defined in RFC 1794. Using the round robin feature, the server rotates the order of resource record data returned in a query answer in which multiple resource records of the same type exist for a queried DNS domain name. Thus, in the example described earlier, if a user queries for www.reskit.com, the name server replies to the first client request by ordering the addresses as the following:

172.16.64.11

172.17.64.22

172.18.64.33

The name server replies to the second client response with the addresses ordered as follows:

172.17.64.22

172.18.64.33

172.16.64.11

If clients are configured to use the first IP address in the list that they receive, different clients use different IP addresses; so the load is balanced among multiple network resources that have the same name. However, if the resolvers are configured for subnet prioritization, the resolvers reorder the list to favor IP addresses from networks to which they were directly connected; so the effectiveness of the round robin feature is reduced.

Although subnet prioritization does reduce network traffic across subnets, in some cases you might prefer to have the round robin feature work as described in RFC 1794. If so, you can disable the subnet prioritization feature on your clients by adding the PrioritizeRecordData registry entry with a value of 0 (REG_DWORD) to the following registry subkey:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \DnsCache\Parameters

caution-icon

Caution

Do not use a registry editor to edit the registry directly unless you have no alternative. The registry editors bypass the standard safeguards provided by administrative tools. These safeguards prevent you from entering conflicting settings or settings that are likely to degrade performance or damage your system. Editing the registry directly can have serious, unexpected consequences that can prevent the system from starting and require that you reinstall Windows 2000. To configure or customize Windows 2000, use the programs in Control Panel or Microsoft Management Console (MMC) whenever possible.

Configuring Subnet Prioritization on the Server
In addition to configuring the resolver to perform subnet prioritization for records that it receives, you can configure the server to do the same for records that it sends. How the server behaves depends on the setting of the Enable round robin option on the Advanced tab of the server Properties dialog box in the DNS snap-in, and the value of the LocalNetPriority (REG_DWORD) registry entry in the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\DNS\Parameters\
You can also change the round robin setting from the registry; however, do so from the DNS snap-in instead.
If Enable round robin is selected (the default) and the value of LocalNetPriority is 1, the server rotates among the A resource records that it returns in the order of their similarity to the IP address of the querying client.If Enable round robin is deselected and the value of LocalNetPriority is 1, the server returns the records in local net priority order. It does not rotate among available addresses.
If Enable round robin is selected and the value of LocalNetPriority is 0 (the default), the server rotates among the available records in the order in which the records were added to the database.If Enable round robin is deselected and the value of LocalNetPriority is 0 (the default), the server returns the records in the order in which they were added to the database. The server does not attempt to sort them or rotate the records it returns.

caution-icon

Caution

Do not use a registry editor to edit the registry directly unless you have no alternative. The registry editors bypass the standard safeguards provided by administrative tools. These safeguards prevent you from entering conflicting settings or settings that are likely to degrade performance or damage your system. Editing the registry directly can have serious, unexpected consequences that can prevent the system from starting and require that you reinstall Windows 2000. To configure or customize Windows 2000, use the programs in Control Panel or Microsoft Management Console (MMC) whenever possible.