如果您收到RPC服务器不可用消息,则此帖子将显示如何解决windows10上的远程过程调用失败错误和问题.RPC或远程过程调用是一种基于网络的编程模型,它允许软件应用程序之间的点对点通信。 在本指南中,我们将分享如何解决远程过程调用错误。 连接到Windows Management Instrumentation(WMI),SQL Server,远程连接或某些Microsoft管理控制台(MMC)管理单元时,可能会发生错误。
远程过程调用错误疑难解答
“RPC服务器不可用”是最常见的问题之一。 这可能是一个简单的网络问题,或者服务器无法响应。 让我们看看我们可以用来解决远程过程调用错误的工具列表。 您可以使用PowerShell或具有管理员权限的命令提示符来运行这些命令。
您必须使用Microsoft网络监视器或Microsoft消息分析器来分析日志。
PortQuery
此工具可帮助您找出您尝试连接的端口的问题。 它可以确定您的应用程序或计算机是否可以连接到服务器。
- Portqry.exe -n <ServerIP> -e 135
上面的命令尝试在给定服务器IP上查询TCP端口25。 如果您在此处使用网站,它将在内部转换为IP地址。 在输出中,查找* ip_tcp和端口号。 如果连接失败,您应该看到响应失败的响应。 如果一切正常,请在末尾查找端口号(标记为粗体)
….Server’s response: UUID: d95afe70-a6d5-4259-822e-2c84da1ddb0d ncacn_ip_tcp:169.254.0.10[49664]
如果您没有看到任何端口号,则表示服务器端出现问题,端口未侦听。
Netsh的
接下来,您可以使用Netsh命令收集同步跟踪数据。 TRACE在这里表示网络上从一个点到另一个点的路径。 如果有任何问题导致介于两者之间,你就会知道。
在客户端运行:
- Netsh trace start scenario=netconnection capture=yes tracefile=c:\client_nettrace.etl maxsize=512 overwrite=yes report=yes
在服务器上运行:
- Netsh trace start scenario=netconnection capture=yes tracefile=c:\server_nettrace.etl maxsize=512 overwrite=yes report=yes
上面的命令将日志保存在tracefile(.etl)中。 保持命令提示符的此窗口准备就绪。
现在尝试重现您在客户端计算机上遇到的问题。 您可能必须按下软件上的某些按钮或任何导致问题的按钮。 一旦看到问题,请在客户端计算机的命令提示符上运行Netsh跟踪停止。
现在使用分析器工具并过滤跟踪
--Ipv4.address ==和ipv4.address ==和tcp.port == 135或只是tcp.port == 135。
--此外,在“协议”列下查找“EPM”协议。
现在检查您是否从服务器获得响应。 如果收到响应,请记下您已分配使用的动态端口号。
--检查是否可以成功连接到此动态端口。
--过滤器应该是这样的:tcp.port ==和ipv4.address ==
它应该可以帮助您验证连接并隔离任何网络问题。
端口无法访问
我们看到RPC服务器不可用的最常见原因是客户端尝试连接的动态端口无法访问。 如果你看到之间的跟踪中断,返回端口没有发现错误,等等,那么可能是因为以下可能的原因
--防火墙已阻止动态端口范围。
--中间的路由器或网络设备正在丢弃数据包; 反应没有回来。
--目标服务器正在丢弃数据包(WFP丢弃/ NIC丢弃/过滤驱动程序等)。
Post无法访问问题的***做法是使用动态分配。 注册表允许管理员配置RPC动态端口分配。