目录
- 简介
- RPC服务已停止
- 名称解析问题
- 防火墙阻止流量
- 连接问题
"RPC 服务器不可用"是 Windows 中在各种情况下发生的常见错误,其中大多数涉及跨网络的两台计算机之间的通信。也可以在计算机上的本地操作期间发生。为了清楚起见,在本文中,启动 RPC 通信的计算机被指定为客户端,与之通信的计算机是服务器。
远程过程调用 (RPC) 是一种机制,允许 Windows 进程在客户端和服务器之间通过网络或在单个计算机内进行通信。许多集成 Windows 组件使用 RPC。RPC 使用动态端口进行计算机之间的通信,但静态端口(TCP 端口 135)也必须用作通信的起点。RPC 端点映射器侦听此静态端口。
在典型的 RPC 会话中,客户端会联系 TCP 端口 135 上的服务器端点映射器,并请求分配给特定服务的动态端口号。服务器使用服务在启动时向 RPC 注册的 IP 地址和端口号进行响应。然后,客户端会联系该 IP 地址和端口上的服务。
"RPC 服务器不可用"错误的可能原因包括:
- 已停止的 RPC 服务:如果服务器上的 RPC 服务未运行,则客户端显然无法访问它。
- 名称解析问题:RPC 服务器的名称可能会解析为错误的 IP 地址,从而导致客户端联系错误的服务器或尝试联系未使用的 IP 地址。或者,服务器的名称可能根本未解析。
- 防火墙阻止流量:服务器上的防火墙或其他安全应用程序或客户端与服务器之间的网络防火墙应用装置可能会阻止流量到达 TCP 端口 135 上的服务器。
- 连接问题:由于一般网络问题,客户端可能根本无法访问服务器。
以下步骤可能有助于对问题进行故障排除。这些步骤按原因进行分类。
- 在服务器上打开Services(服务)控制台。
- 找到远程过程调用 (RPC) 服务并确保其正在运行。
提醒:远程过程调用 (RPC) 定位器服务通常不运行。
- 如果该服务处于已停止状态,请尝试手动启动它。
- 从客户端中通过名称使用Ping命令测试与服务器的连接,以验证该名称解析为正确的IP地址。如果解析正确,名称解析就不是该问题的原因,可以跳过本节中的其余步骤。
- 如果客户端和服务器都是Active Directory (AD)域的成员,则将DNS用于名称解析。验证客户端和服务器都使用正确的DNS服务器(DNS服务器必须在域内,通常是域控制器)。
- 如果正在使用正确的 DNS 服务器,请使用这些服务器上的 DNS 管理控制台来验证 RPC 服务器是否在 DNS 中注册了一个或多个正确的记录。如有必要,可在RPC服务器上使用ipconfig /registerdns命令来重新注册其DNS记录。
- 如果不存在AD域,则可将WINS用于名称解析。ipconfig /all 命令列表,以及其他 RPC 服务器使用的 WINS 服务器。检查这些服务器上的 WINS 数据库,以验证为 RPC 服务器注册的记录是否正确。如有必要,可在RPC服务器上运行nbtstat -RR命令来重新注册其WINS记录。
- 在RPC服务器上检查Windows防火墙设置。
- 如果已启用防火墙,请确保允许 TCP 端口 135 上的流量通过。
- 如果服务器运行的是Windows Server 2003,Windows防火墙可能未正确处理RPC动态端口分配。在这种情况下,可能需要禁用Windows防火墙或限制RPC使用的端口(请参阅步骤4)。
- 如果服务器运行的是Windows Server 2008或更高版本,请验证Windows Firewall(Windows防火墙)服务是否正在运行。默认情况下,Windows Server 2008 及更高版本中的 Windows 防火墙应正确处理 RPC 流量;但是,如果必须手动配置此项,请参阅此 TechNet 文章了解说明:允许使用动态 RPC 的入站网络流量。
如果 Windows Server 2008 或更高版本中必须禁用 Windows 防火墙,请勿停止 Windows 防火墙服务。而是应该按照How to Properly Turn Off the Windows Firewall in Windows Server 2008 and Above(如何在Windows Server 2008及更高版本中正确关闭Windows防火墙)中的步骤操作。
- 如果部署了第三方防火墙软件、其他安全应用程序或网络防火墙设备,请参阅相应应用程序或设备的说明文件,以确定是否可以对其进行适当配置以处理RPC通信。
- 如果无法将防火墙软件、其他安全应用程序或网络应用装置配置为正确处理动态 RPC 流量,则可以限制 RPC 使用的端口范围,然后可以在防火墙或安全应用程序上打开此范围。要限制RPC使用的端口范围,请参阅How to Configure RPC Dynamic Port Allocation to Work with Firewalls(如何配置RPC动态端口分配以使用防火墙)。
- 使用ping命令来测试RPC客户端和服务器之间的基本连接。请注意,此测试可能不是决定性的,因为防火墙可能会阻止ICMP流量,却允许其他流量通过。(ICMP 或 Internet 控制消息协议是 ping 和 tracert 命令使用的协议。)
- 可使用PortQry命令行实用程序来测试从客户端到服务器的连接,并确定服务器上的哪些端口处于打开状态。它包括对 RPC 的支持,可用于确定哪些服务具有向 RPC 注册的动态端口,以及它们使用的特定端口。有关 PortQry 版本 2.0 的详细信息,请参阅 此处 :PortQry 版本 2.0 中的新特性和功能。
- 如果客户端与服务器在不同的子网上,请验证流量可以在两个子网之间正确路由。如果客户端与服务器在不同的物理位置处,请验证站点之间的链接是否已建立并且允许流量自由通过。
有关对此错误进行故障排除的进一步说明,请参阅 故障排除 "The RPC Server is Unavailable"(RPC 服务器不可用)。
有关 RPC 的一般信息,请参阅 什么是 RPC?
超出保修期?没有问题。浏览 Dell.com/support 网站,输入您的戴尔服务编号并查看我们的服务。
提醒:服务仅适用于
美国、加拿大、英国、法国、德国和
中国的个人计算机客户。服务器和存储不适用。