Article ID: 306985 - View products that this article applies to.
This article was previously published under Q306985
When you attempt to connect to a virtual server on a server cluster, Remote Procedure Call (RPC) errors and general connectivity issues may occur. This behavior may occur with any RPC-based program (such as Cluster Administrator, Event Viewer, or Computer Management). You may receive either of the following error messages:
Error 1722 The RPC server is unavailable.
The machines selected for remote communication is not available at this time.
These problems can occur when you attempt to connect to a Network Name resource that is a name that is associated with a SQL server instance. SQL Server uses remapped pipe names.
By default, there is no scoping of server message block (SMB) resource names to virtual server names on a server cluster. Named pipe remapping provides scoping for pipe names. This makes it possible to run two instances of a program that use a well-known pipe name on the same computer under different virtual servers. The issue occurs because these specific network names redirect the named pipe connections and can cause connectivity issues for anything other than SQL Server.
Network Name resources that are created by the SQL Server Installation Wizard set the following registry value:
HKEY_LOCAL_MACHINE\Cluster\Resources\%ResourceGUID%\Parameters\RemapPipeNamesThe RemapPipeNames property controls how named pipes are opened on the network that is managed by the Network Name resource. The following table summarizes the attributes of the RemapPipeNames property.
If RemapPipeNames is set to TRUE, named pipes are always opened by using local pipe names. For example, if a client opens \\VSNAME\pipe\SQL\Query (where VSNAME is a network name with RemapPipeNames set), the client actually opens \\.\pipe\$$\VSNAME\SQL\Query.
Collapse this tableExpand this table
SQL Server 2000 on a cluster listens on this pipe name rather than the default. Therefore, you can only connect to the server by using the virtual server name. If you use the node name, it does not work (as with TCP/IP). If you create a Network Name resource manually, RemapPipeNames is set to FALSE by default. However, when SQL Server Setup creates the Network Name resource, it sets the RemapPipeNames flag to true.
If a request to access a named pipe arrives at the server through the SQL Server virtual server name, this remapping of the pipe name takes place. If the pipe is a system pipe that is not associated with the virtual server, the remapping of the pipe name still takes place and does not connect (generating the RPC error). This occurs because the process for the system is not listening on the remapped pipe as SQL Server is.
The SQL Network Name resource should be used only for SQL Server connectivity. Clients should not attempt to connect to this name for other functions (for example, file shares or the Computer Management utility), and no other non-SQL Server resources should be dependent on this Network Name resource.
To correct this issue, create a new Network Name resource that is dependent on a new IP Address resource, and change any dependent resources and client connections to use these new network names.
For more information about troubleshooting connectivity issues, click the following article numbers to view the articles in the Microsoft Knowledge Base:
(http://support.microsoft.com/kb/257932/ )Using Microsoft Cluster Server to create a virtual server
(http://support.microsoft.com/kb/258518/ )RPC Unavailable error appears when you try to access a cluster server
(http://support.microsoft.com/kb/228480/ )Error 1722 when starting Cluster Administrator
Article ID: 306985 - Last Review: October 29, 2007 - Revision: 3.4