Configure Static RPC Ports on an Exchange 2010 Client Access Server

Configure Static RPC Ports on an Exchange 2010 Client Access Server

 

 This Wiki page explains how to configure static ports for the RPC Client Access service, Exchange Address Book service, and public folder connections in Exchange 2010.

Often there are firewall restrictions in place between the Outlook client network and the Exchange 2010 messaging infrastructure network, which requires that static RPC ports are set on each Client Access Server in a Client Access array. In addition using static RPC ports usually reduces the memory footprint on the load balancer devices.



note Note

For information on how to configure a static UDP port for push notifications in an Exchange 2010 environment, see the Configuring a Static UDP Port for Push Notifications in an Exchange 2010 Environment TechNet Wiki article.

By default Windows Server 2008 and 2008 R2 are configured with a dynamic RPC range of 49152-65535 for outbound connections. Earlier versions of Windows Server by default used port 1025-65535 (for more details about this change see Microsoft KB article: The default dynamic port range for TCP/IP has changed in Windows Vista and in Windows Server 2008). Also, when the Exchange 2010 Client Access server role is installed on Windows Server 2008 or 2008 R2, the dynamic RPC port range is changed to 6005-59530 and the highest usable port number is set to 60554.


Exchange 2010 RPC Client Access Service

By default the RPC Client Access service on an Exchange 2010 Client Access server uses the TCP End Point Mapper port (TCP/135) and the dynamic RPC port range (6005-59530) for outgoing connections, every time an Outlook clients establish a connection to Exchange.

To set a static port for the RPC Client Access service on an Exchange 2010 Client Access server, you need to open the registry on the respective server and navigate to:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MSExchangeRPC

Here, you need to create a new key named ParametersSystem, and under this key create a REG_DWORD named TCP/IP Port. The Value for the DWORD should be the port number you want to use.


Configuring static ports for the RPC Client Access service


note Note
Microsoft recommends you set this to a unique value between 59531 and 60554 and use the same value on all CAS in any one AD site.

When you’ve configured the port, it's required to restart the Microsoft Exchange RPC Client Access service in order for the changes to be applied.

Exchange 2010 Address Book Service

By default the Exchange Address Book service on an Exchange 2010 Client Access server uses the TCP End Point Mapper (TCP/135) and the dynamic RPC port range (6005-59530) for outgoing connections, every time an Outlook client establish a connection to Exchange.

Exchange 2010 RTM

In Exchange 2010 RTM a static port for the Exchange Address Book service is set using the following steps:

  • Open the microsoft.exchange.addressbook.service.exe.config configuration file located in C:\Program Files\Microsoft\Exchange Server\V14\Bin using Notepad.
  • Change the value for the key RpcTcpPort to the port you want to use as the static port for this service. Bear in mind you cannot use the same port as you configured for the RPC Client Access service.
     


Configuring static port for the Exchange Address Book Service in Exchange 2010 RTM


note Note
Microsoft recommends you set this to a unique value between 59531 and 60554 and use the same value on all Exchange 2010 Client Access servers in any one AD site.

 

When you’ve configured the port, it's required to restart the Microsoft Exchange Address Book service in order for the changes to be applied.

Exchange 2010 SP1

With Exchange 2010 SP1, you no longer use the “Microsoft.exchange.addressbook.service.exe.config” file to assign a static RPC port to the Exchange Address Book Service. Instead this configuration setting is controlled using the registry. To set a static RPC port for the Exchange Address Book Service, create a new REG_SZ registry key named “RpcTcpPort” under:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MSExchangeAB\Parameters


Configuring static port for the Exchange Address Book Service in Exchange 2010 SP1


note Important
When upgrading from Exchange 2010 RTM to SP1, you need to set this key manually after the upgrade.
          

 

note Note
Microsoft recommends you set this to a unique value between 59531 and 60554 and use the same value on all Exchange 2010 Client Access servers in any one AD site.

 

When you’ve configured the port, it's required to restart the Microsoft Exchange Address Book service in order for the changes to be applied.

Exchange 2010 Public Folder Connections

By default public folder connections uses the TCP End Point Mapper (TCP/135) and the dynamic RPC port range (49152-65535) for outgoing connections, every time an Outlook client establish a connection to Exchange.

To set a static port for public folder connections, follow the same steps as those required for configuring static ports for the RPC CA service. Just bear in mind you need to perform them on the Exchange 2010 servers that stores public folder databases. This is because public folder connections from an Outlook client occur against the RPC Client Access service on the Mailbox server role.

  
Configuring a static port for Public Folder connections

When the port has been set for public folder connections, it's required to restart the Microsoft Exchange RPC Client Access service on the Mailbox server in order for the changes to be applied.


note Important
Unlike in previous versions of Exchange Server, you configure static RPC ports for an Exchange 2010 Mailbox server under the MSExchangeRPC key and not under MSExchangeSA\Parameters since all MAPI connections to an Exchange 2010 Mailbox server are handled by the RPC Client Access service. For information on how to configure static RPC ports in Exchange 2007 and earlier see Microosft KB article: Exchange Server static port mappings.

 

Verifying the Statically Configured Ports Are Used

In order to verify that the static ports configured are used, the netstat.exe tool can be used:

Netstat -an -p tcp


Verifying the configured static ports are used on the Client Access and Mailbox servers


Script to Automate the Configuration Process

Script to set static ports is now available here. The script works with Exchange 2010 RTM and SP1, SP2 and SP3. It also includes -auto to automatically search and change ports on all Exchange 2010 CAS servers and Mailbox Servers hosting public folders in the environment. More details here.


See Also


External Links

 


Other Languages

Leave a Comment
  • Please add 6 and 8 and type the answer here:
  • Post
Wiki - Revision Comment List(Revision Comment)
Sort by: Published Date | Most Recent | Most Useful
Comments
  • Richard Mueller edited Revision 88. Comment: Removed (en-US) from title

  • Richard Mueller edited Revision 86. Comment: Changed "Related Wiki Pages" section to "See Also"

  • Richard Mueller edited Revision 85. Comment: Fixed HTML <h2> tags to make toc work, modified case of headers

  • Yagmoth555 edited Revision 83. Comment: great article!, adding a link to a french's translation

  • Jewel Lambert edited Revision 81. Comment: Spelling correction

  • Mike Crowley edited Revision 66. Comment: Updated "Exchange 2010 Client Access Array & Load Balancing Resources" link

  • Ed Price - MSFT edited Revision 64. Comment: White space issues. Aborting TOC attempt.

  • Henrik Walther edited Revision 58. Comment: Added link to UDP article

  • Henrik Walther edited Revision 46. Comment: Changed wording and misc sentences

  • Henrik Walther edited Revision 41. Comment: Changes fig to reflect recommended port usage

Page 1 of 2 (12 items) 12
Wikis - Comment List
Sort by: Published Date | Most Recent | Most Useful
Posting comments is temporarily disabled until 10:00am PST on Saturday, December 14th. Thank you for your patience.
Comments
  • Richard Mueller edited Revision 88. Comment: Removed (en-US) from title

  • GREAT

  • Aakash,

    Services on Windows Servers use dynamic ports. Use of static ports is optional and it makes sense if I was a customer that Microsoft does not make a decision for me which static ports I want to use in my environment or if I even want to use static ports in my environment.

    I don't think it's matter of performance (that I am aware of). I think it is matter of choice. Using static ports do help certain scenarios with Load Balancing, Firewall configuration and overall simplicity when it comes to troubleshooting.

    Hope this helps.

  • Hi Henrik!  You mentioned to David Clark on 1/9/2012 that there are no downsides to using static ports.  I was curious to know/understand why a port range was used instead of static ports.  Was this due to performance reasons?

    Thanks for the great article!

  • Richard Mueller edited Revision 86. Comment: Changed "Related Wiki Pages" section to "See Also"

  • Richard Mueller edited Revision 85. Comment: Fixed HTML <h2> tags to make toc work, modified case of headers

  • Thanks Paul glad to hear you like it...

  • As usual Henrik another great article on Exchange.  You are a pro.

  • Yagmoth555 edited Revision 83. Comment: great article!, adding a link to a french's translation

  • Jewel Lambert edited Revision 81. Comment: Spelling correction

  • David: No downsides :)

  • One quick question, are there any downsides in having a static port, does it limit anything?

    Thanks

    Dave

  • Thanks Ronnie

  • Brilliant article. thank you very much

  • Mike Crowley edited Revision 66. Comment: Updated "Exchange 2010 Client Access Array & Load Balancing Resources" link

Page 1 of 3 (42 items) 123