Búsqueda de sitios web

Solución de problemas de errores de "Servidor RPC no disponible" en Windows


“

The RPC server is unavailable

El error ” aparece en Windows cuando ocurre un error de comunicación entre dos computadoras en una red. Su computadora (un cliente RPC) no puede conectarse a una computadora remota (un servidor RPC). Entonces, el programa que está ejecutando no funciona y devuelve un error RPC porque no puede acceder a los datos en el host remoto. En este artículo analizaremos los problemas comunes que pueden impedir la comunicación normal de las computadoras a través de una red que utiliza el protocolo RPC.

RPC (Llamada de proceso remoto) es un protocolo popular para que las aplicaciones cliente-servidor se comuniquen a través de una red local. Por lo general, se usa para comunicarse con una computadora remota; sin embargo, algunos programas usan RPC en las interacciones entre una aplicación y un servicio que se ejecuta localmente.

En una sesión típica, un cliente RPC se conecta al servicio RPC Endpoint Mapper en un servidor RPC a través del puerto TCP 135 y solicita el número de puerto en el que se está ejecutando la aplicación RPC (servicio) que necesita. RPC Endpoint Mapper devuelve el número del puerto RPC dinámico asignado al servicio especificado cuando se inició. Luego, el cliente RPC se conecta al servicio de la aplicación RPC en el puerto TCP especificado.

Si un cliente RPC no pudo conectarse a un servidor RPC, aparece el siguiente error en la aplicación:

The RPC server is unavailable

Las versiones modernas de Windows (Windows Vista/2008 y posteriores) usan el rango de puertos RPC dinámicos de

49152

a

65535

. Windows Server 2003/XP/2000 usaba un rango de puertos RPC diferente: 1024 - 65535.

Estos son los problemas más comunes que impiden que las computadoras se comuniquen a través de RPC:

  1. Una computadora remota está apagada;

  2. Los servicios RPC no se están ejecutando en el host remoto;

  3. Está intentando conectarse a un servidor RPC utilizando el nombre de host incorrecto (o una dirección IP incorrecta coincide con el nombre DNS del servidor);

  4. Se utilizan configuraciones de conexión de red incorrectas en el servidor o el cliente;

  5. El firewall bloquea el tráfico RPC entre el cliente y el servidor.

Comprobación de la disponibilidad del equipo remoto

Asegúrese de que la computadora remota esté encendida, haga ping por su nombre y dirección IP. Si el servidor RPC no está disponible por el nombre de host, verifique si los registros de DNS son correctos e intente vaciar la caché de DNS en el cliente:

ipconfig /flushdns

Si el nombre de la computadora en la que se ejecuta su servidor RPC ha cambiado recientemente, intente volver a registrarlo en Active Directory DNS:

ipconfig /registerdns

Comprobar el estado de los servicios DCE/RPC

Asegúrese de que los servicios que procesan las conexiones RPC entrantes se estén ejecutando en el servidor:

  1. Abra la consola de administración de servicios (

    services.msc

    );

  2. Asegúrese de que los siguientes servicios se estén ejecutando y configurados para iniciarse automáticamente: Llamada a procedimiento remoto (RPC), Asignador de puntos finales RPC y Lanzador de procesos del servidor DCOM .

Puede consultar el estado de los servicios a través de PowerShell:

Get-Service RpcSs,RpcEptMapper,DcomLaunch| Select DisplayName,Status,StartType

Si los servicios RPC están detenidos y no puede iniciarlos, intente activarlos a través del registro. Busque la clave de registro de los servicios y cambie el valor del parámetro Inicio a 2 (inicio automático del servicio):

  • Llamada a procedimiento remoto (RPC): HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RpcSs

  • Asignador de extremos RPC: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RpcEptMapper

  • Lanzador de procesos del servidor DCOM: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DcomLaunch

El cortafuegos está bloqueando las conexiones RPC

Asegúrese de que su firewall no bloquee el tráfico RPC entre computadoras. Si usa el Firewall de Windows Defender con seguridad avanzada, debe crear las reglas que permitan el tráfico RPC o asegurarse de que existan. Una de las reglas es permitir el acceso al servicio RPC Endpoint Mapper a través del puerto TCP 135, otra es permitir el acceso al servicio RPC que desea utilizar a través de los puertos dinámicos de RPC. Cree las reglas para todos los perfiles de red: Dominio, Privado y Público.

Puede crear las reglas manualmente siguiendo las instrucciones del artículo Crear reglas de entrada para admitir RPC https://docs.microsoft.com/en-us/windows/security/threat-protection/windows-firewall/create-inbound-rules-to-support-rpc). En un entorno de dominio de AD, puede implementar reglas de firewall mediante GPO o scripts de PowerShell.

Asegúrese de que el puerto TCP/135 esté disponible en su servidor RPC desde un cliente (el RPC Endpoint Mapper debe escucharlo). Puede verificar la disponibilidad del puerto a través de PowerShell:

Test-NetConnection 192.168.1.201 -port 135

Si el puerto RPC está disponible, verá el mensaje:

TcpTestSucceeded:True

Puede obtener una lista de puntos finales de RPC (servicios y aplicaciones) registrados en la computadora remota y anunciados por el servicio RPC Endpoint Mapper mediante la herramienta PortQry:

portqry -n 192.168.1.201 -p tcp -e 135

En la salida de PortQry, puede ver el número del puerto asignado al servicio RPC que desea usar (¿está en ejecución?) y asegurarse de que el puerto no esté bloqueado para el cliente.

Si está utilizando un software de firewall/antivirus de terceros, asegúrese de que no bloquee el tráfico de RPC y pueda procesar correctamente el tráfico de puertos dinámicos de RPC.

Verifique los protocolos y configuraciones de red

Asegúrese de que la configuración de red en su computadora sea correcta: la dirección IP, la puerta de enlace predeterminada, la máscara de subred, la configuración del servidor DNS (puede verificar la configuración de red desde PowerShell). Asegúrese de que Protocolo de Internet versión 6 (TCP/IPv6) y Compartir archivos e impresoras para redes Microsoft estén habilitados en la configuración del adaptador de red.

Algunas aplicaciones de red no funcionan correctamente si el protocolo TCP/IPv6 está deshabilitado y devuelven el error:

1722 The RPC server is unavailable

. Si el error RPC persiste después de habilitar IPv6, intente deshabilitar el protocolo Teredo a través del registro:
Cree un parámetro DWORD con el nombre DisabledComponents y el valor 8 en la clave de registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters:

reg add hklm\system\currentcontrolset\services\tcpip6\parameters /v DisabledComponents /t REG_DWORD /d 8

En algunos casos, tendrá que obtener el volcado de tráfico de su servidor RPC y analizarlo con Microsoft Network Monitor 3.4 o Message Analyzer.

Windows 10 1809 y Windows Server 2019 tienen el rastreador de tráfico incorporado: Packet Monitor (PktMon.exe).

Artículos relacionados