XGEN: Changing the RPC Binding Order

Last reviewed: February 20, 1998
Article ID: Q163576
The information in this article applies to:
  • Microsoft Exchange Server, versions 4.0, 5.0

SUMMARY

How Microsoft Exchange Server Uses RPC

Microsoft Exchange Server uses RPC built into Windows NT for establishing connections among the Microsoft Exchange Server processes, such as connections between Microsoft Exchange Server Message Transfer Agents (MTAs), and for connecting Microsoft Exchange clients and Servers in the network. Microsoft Exchange Server can use RPC over named pipes, TCP/IP, NetBIOS, and IPX/SPX. When it tries to use RPC, Microsoft Exchange Server proceeds through the list of the protocols given above and tries to establish RPC binding. The preference order of the transports is defined by the "RPC BINDING ORDER" which by default is Local RPC, TCP/IP, SPX, Named Pipes, and then Netbios in order of preference.

Changing the RPC Protocol Binding Order

When a Microsoft Exchange client is installed, it sets the default RPC protocol binding order. This setting determines the protocol sequence that it uses to communicate with Microsoft Exchange Server. You can change the RPC binding order before or after the client is installed. Performance can be improved by changing the RPC binding order if the client uses multiple protocols or if the single protocol your client uses is not the first listed in the RPC binding order. If the protocol used is last in the sequence, the Microsoft Exchange client attempts to bind over the protocols listed before it when connecting to the Server. The protocols are represented in the binding order, using the following entries. The string ncacn refers to Network Computing Architecture Connection.

   Protocol name  RPC protocol string
   ----------------------------------

   Local RPC      ncalrpc
   TCP/IP         ncacn_ip_tcp
   SPX            ncacn_spx
   Named pipes    ncacn_np
   NetBIOS        netbios
   VINES IP       ncacn_vns_spp

For example, the following entry attempts to establish connections over SPX, TCP/IP, and NetBIOS in that order.

   RPC_Binding_Order=ncacn_spx,ncacn_ip_tcp,netbios

Clients Running Windows 95, Windows NT Server, and Windows NT Workstation

By default, the Microsoft Exchange client uses the following RPC binding order for Windows 95, Windows NT Server, and Windows NT Workstation when attempting to connect to a Microsoft Exchange Server.

   1. TCP/IP
   2. SPX
   3. Named pipes
   4. NetBIOS
   5. VINES IP (Windows NT Server and Windows NT Workstation only)

You can change the RPC binding order for clients running Windows 95, Windows NT Workstation, and Windows NT Server before or after you've installed the Microsoft Exchange Client.

Before installation:

In Setup Editor, select the Binding Order property page.

After installation:

Use the Registry Editor to modify the binding order in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Exchange Provider. For example, the following entry attempts to establish SPX, TCP/IP, and NetBIOS connections in the order indicated:

   RPC_Binding_Order=ncacn_spx,ncacn_ip_tcp,netbios

Clients Running Windows and Windows for Workgroups

By default, the Microsoft Exchange client uses the following RPC binding order for Windows for Workgroups when attempting to connect to a Microsoft Exchange Server.

   1. Named pipes
   2. SPX
   3. TCP/IP
   4. NetBIOS
   5. VINES IP

You can change the RPC binding order for clients running Windows and Windows for Workgroups before or after you've installed Microsoft Exchange Client.

Before installation:

In Setup Editor, select the Binding Order property page.

After installation:

In the Exchng.ini file in the Windows directory, edit the [Exchange Provider] section. For example, the following entry in the Exchng.ini file attempts to establish SPX, TCP/IP, and NetBIOS connections in the order indicated:

   [Exchange Provider]
   RPC_Binding_Order=ncacn_spx,ncacn_ip_tcp,netbios

Clients Running MS-DOS

By default, the Microsoft Exchange client uses the following RPC binding order for MS-DOS when attempting to connect to a Microsoft Exchange Server.

   1. Local RPC
   2. Named pipes
   3. SPX
   4. TCP/IP
   5. NetBIOS

You can change the RPC binding order for clients running MS-DOS after you've installed MS-DOS. To change the order, edit the RPC_BINDING_ORDER line in the Mlsetup.ini file. This file is installed automatically on the client or on a network share. For example, the following entry in the Mlsetup.ini file attempts to establish local RPC, named pipes, TCP/IP, and NetBIOS connections in the order indicated:

   RPC_Binding_Order=ncalrpc,ncacn_np,ncacn_ip_tcp,netbios

MORE INFORMATION

There is no need to reboot the computer after modifying the Microsoft Exchange binding order. The Microsoft Exchange client will reread the binding when restarting. For troubleshooting purposes, simply change the binding order in the registry (make sure the key has been fully committed to the registry) and then attempt a check names from the properties for the Microsoft Exchange Server Service (control panel/mail). It is unnecessary even to exit out of regedit when trying different bindings.

You MUST use commas between binding order entries or the binding doesn't get read. If, for instance, you use "ncacn_ip_tcp;netbios" and attempt a check names, the following error will immediately be generated:

   The name could not be resolved. The Microsoft Address Book was unable to
   log on to the Microsoft Exchange Server computer. Contact your system
   administrator if the problem persists. <ok>

If the entire RPC_binding_Order subkey is deleted, the Microsoft Exchange client will utilize the default binding order. This may be a good quick troubleshooting step if there are concerns about incorrect entries in the binding order.

The information in this article came from the Exchange Server Resource Kit on TechNet and other sources.

For additional information, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q136516
   TITLE     : XCLN: Improving Windows Client Startup Times


Additional query words: Exchange provider EXCHNG.INI XCLN XADM
Keywords : XGen kbsetup kbusage
Version : 4.0
Platform : winnt


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: February 20, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.