XFOR: Internet Mail Service Caches Domain Name System (DNS) Lookups (198021)



The information in this article applies to:

  • Microsoft Exchange Server 4.0
  • Microsoft Exchange Server 5.0
  • Microsoft Exchange Server 5.5

This article was previously published under Q198021
IMPORTANT: This article contains information about editing the registry. Before you edit the registry, make sure you understand how to restore it if a problem occurs. For information about how to do this, view the "Restoring the Registry" Help topic in Regedit.exe or the "Restoring a Registry Key" Help topic in Regedt32.exe.

SYMPTOMS

When you use the load-balancing features inherent in the later builds of Domain Name System (DNS), you may notice that the DNS expected performance is not achieved. Further investigation using a network trace will show that the Exchange server is not sending DNS requests to the DNS server.

CAUSE

By default, the Internet Mail Service caches all successful DNS lookups to a maximum of 1,000 entries. Subsequent lookups to the same domain will be retrieved from the Internet Mail Service's cache rather than being submitted to the DNS for name resolution. The intent of this caching is to offer a performance gain. A side-effect of this caching is that Domain Name System's inherent load-balancing cannot be used when caching is turned on.

WORKAROUND

To work around this problem, modify the behavior by performing the following steps:

WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the "Changing Keys And Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe. Note that you should back up the registry before you edit it. If you are running Windows NT, you should also update your Emergency Repair Disk (ERD).

  1. Start Registry Editor (Regedt32.exe or Regedit.exe).
  2. Create the DestinationDomainThreshold value under the following key in the registry:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIMC\Parameters

    NOTE: The above registry key is one path; it may be wrapped for readability.
  3. For Regedt32.exe, select Edit:Add Value. Enter the value name from above and select REG_DWORD, click OK and then the desired value. For regedit.exe, select the Edit:New:DWORD value, type the value name and then hit enter.
    The default for this value is 1000 (decimal). Setting the default to zero will disable the caching (not recommended due to the amount of network traffic this will generate).
  4. Quit Registry Editor.

MORE INFORMATION

If it is necessary in your environment to set this to zero to force the IMS to not cache at all, you can avoid the network traffic overhead by installing NT DNS on the same machine, pointing the TCP/IP stack to itself for DNS name resolution and have the DNS service run as a caching-only server doing lookups to your regular DNS server. The NT DNS service respects TTL and will do a record shuffle back to the IMS thus achieving the goals of disabling the cache to force round-robin behavior.

Modification Type:MinorLast Reviewed:4/28/2005
Keywords:kbprb KB198021