MaxUserPort Key is Missing or Non-default

[This topic is intended to address a specific issue called out by the Exchange Server Analyzer Tool. You should apply it only to systems that have had the Exchange Server Analyzer Tool run against them and are experiencing that specific issue. The Exchange Server Analyzer Tool, available as a free download, remotely collects configuration data from each server in the topology and automatically analyzes the data. The resulting report details important configuration issues, potential problems, and nondefault product settings. By following these recommendations, you can achieve better performance, scalability, reliability, and uptime. For more information about the tool or to download the latest versions, see "Microsoft Exchange Analyzers" at https://go.microsoft.com/fwlink/?linkid=34707.]  

Topic Last Modified: 2007-03-23

The Microsoft Exchange Analyzer tool queries the Active Directory directory service to determine the value of the serialNumber attribute for all objects that have an object class of msExchExchangeServer. If the string value includes "Version 5.5", the computer is running Exchange Server 5.5. If the string value includes "Version 6.0", the computer is running Exchange 2000 Server. If the string value includes "Version 6.5", the computer is running Exchange Server 2003. If the string value includes "Version 8.0", the computer is running Exchange Server 2007.

The Exchange Analyzer tool then reads the following registry branch for each Exchange Server 2007 server found to determine whether the value for the MaxUserPort key is set to the default value of 60000.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

The MaxUserPort key determines the highest port number TCP can assign when an application requests an available user port from the system.

By default, Microsoft Windows Server 2003 sets the MaxUserPort value to 5000. Microsoft Windows 2000 does not add the MaxUserPort value to the registry. However, it can be manually added. However, on Windows Server 2003 and Windows 2000 Server, Exchange Server 2003 and Exchange Server 2007 sets the default value to 60000. Exchange 2000 Server does not set a value.

We recommended that you set the MaxUserPort value to 60000. If you set the MaxUserPort value lower than 60000, you may cause Name Service Provider Interface (NSPI) proxy warnings, such as Event 9040. Event 9040 is documented in the following table:

Event ID 9040

Event Category

NSPI Proxy

Event Source

MSExchangeSA

Event Type

Warning

Event Description

NSPI Proxy encountered an error while receiving a packet. The target domain controller or the network or a client might be down. The Winsock subsystem returned the error:[0x2746]. The circuit that received this error is being closed.

Important

This topic contains information about editing the registry. Before you edit the registry, make sure you understand how to restore the registry if a problem occurs. For information about how to restore the registry, view the "Restore the Registry" Help topic in Regedit.exe or Regedt32.exe.

To correct this warning

  1. Open a registry editor, such as Regedit.exe or Regedt32.exe.

  2. Navigate to: HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

  3. Double-click MaxUserPort, set the Value data field to 60000 (Decimal), and then click OK.

  4. Close the registry editor and restart the computer for this setting to take effect.

Before you edit the registry, and for information about how to edit the registry, see Microsoft Knowledge Base article 256986, "Description of the Microsoft Windows Registry" (https://go.microsoft.com/fwlink/?linkid=3052&kbid=256986).

This issue is related to the TcpTimedWaitDelay Key is Missing or Non-default Analyzer issue.

For more information about the effect of the MaxUserPort and TcpTimedWaitDelay registry keys, see the "Transmission Control Protocol" topic in the Windows 2000 Resource Kit (https://go.microsoft.com/fwlink/?LinkId=85654).