Microsoft KB Archive/306985

From BetaArchive Wiki
Knowledge Base


Error message when you connect to a cluster virtual server by using the named pipes protocol: "The machines selected for remote communication is not available at this time."

Article ID: 306985

Article Last Modified on 10/29/2007



APPLIES TO

  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition



This article was previously published under Q306985

SYMPTOMS

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.

CAUSE

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\RemapPipeNames


The 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.

Attribute Value
Data type DWORD
Access Read/write
Status Optional
Structure CLUSPROP_DWORD
Minimum FALSE
Maximum TRUE
Default FALSE

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.

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.

RESOLUTION

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.

MORE INFORMATION

For more information about troubleshooting connectivity issues, click the following article numbers to view the articles in the Microsoft Knowledge Base:

257932 Using Microsoft Cluster Server to create a virtual server


258518 RPC Unavailable error appears when you try to access a cluster server


228480 Error 1722 when starting Cluster Administrator



Additional query words: mscs 0xc0000034 STATUS_OBJECT_NAME_NOT_FOUND, DisableStrictNameChecking

Keywords: kbproductlink kbsql2005cluster kberrmsg kbprb KB306985