什么是 RPC?
要理解这个错误,我们得先明白 RPC 是什么。

- RPC 的全称是 Remote Procedure Call,中文译为 “远程过程调用”。
- 简单比喻:你可以把它想象成一种“跨计算机的电话系统”,你的电脑(客户端)需要另一台电脑(服务器)上的某个功能,它就通过 RPC “打电话”给那台服务器,告诉它“请帮我做这件事”,然后服务器做完后,再把结果“电话”回来。
RPC 的核心作用:它允许一台计算机上的程序,无缝地请求另一台计算机上的服务,就像调用本地函数一样方便,许多 Windows 的核心服务和网络功能都依赖于它,
- 文件和打印机共享:你访问另一台电脑上的共享文件夹,就是通过 RPC。
- 组策略:域控制器应用组策略到客户端电脑,依靠 RPC。
- Windows 防火墙:远程管理防火墙规则需要 RPC。
- 分布式事务协调器:数据库等应用程序需要它来保证数据一致性。
当你的电脑说“RPC 服务器不可用”时,它的真正意思是:“我尝试通过 RPC 协议联系另一台电脑,但失败了。”
错误代码 1722 的官方含义
根据微软官方文档,错误代码 1722 的定义是:
RPC 服务器不可用。
(图片来源网络,侵删)
英文原文是:
The RPC server is unavailable.
这个错误非常明确地指出了问题的根源:RPC 通信链路中断了,问题可能出在客户端、服务器端,或者它们之间的网络路径上。
常见原因分析
导致这个错误的原因多种多样,通常可以分为以下几类:

网络连接问题 (最常见)
- 物理连接问题:网线松动、Wi-Fi 信号弱或断开。
- 网络设备问题:交换机、路由器出现故障或配置错误。
- IP 地址冲突:网络中有两台设备使用了相同的 IP 地址。
- 子网掩码或网关错误:客户端的配置无法正确路由到目标服务器。
- 防火墙拦截:这是第二大常见原因,客户端或服务端的防火墙(包括 Windows Defender 防火墙)可能阻止了 RPC 所需的端口。
服务未运行 (在服务器端)
目标服务器(你要连接的那台电脑)上,RPC 相关服务没有启动或崩溃了,最关键的服务是:
- RPC Locator (RPC 定位器服务):负责将 RPC 程序名称映射到网络地址,对于较老的系统或某些特定功能,此服务至关重要。
- RPC Endpoint Mapper (RPC 端点映射器服务):这是 RPC 的“总机”,客户端首先会联系它来找到最终服务的具体端口,此服务是 RPC 的核心,必须运行。
- Computer Browser (计算机浏览器服务):在“网络”邻居中查看其他电脑依赖此服务。
RPC 配置问题
- DCOM 配置错误:DCOM (Distributed Component Object Model) 是 RPC 的一种高级应用,用于组件间的通信,DCOM 的访问权限或启动权限配置不当,也会导致 RPC 失败。
- RPC 服务依赖项缺失:某个 RPC 服务可能依赖于另一个服务,如果被依赖的服务没启动,它也无法启动。
DNS 解析问题
如果你的客户端是通过计算机名(如 fileserver01)而不是 IP 地址来访问服务器的,DNS 解析失败也会导致“服务器不可用”,电脑无法找到 fileserver01 对应的 IP 地址,自然也就无法建立连接。
系统文件损坏
Windows 的系统文件如果损坏,也可能导致 RPC 服务无法正常工作。
详细的排查和解决步骤
请按照从易到难的顺序进行排查。
步骤 1:基础网络检查
-
Ping 测试:
- Ping IP 地址:在客户端电脑上打开命令提示符(CMD),输入
ping <服务器IP地址>。请求超时或找不到主机,说明网络物理层或 IP 层有问题,如果通,说明网络基础是通的。 - Ping 计算机名:接着输入
ping <服务器计算机名>,如果不通,说明是 DNS 解析问题,请检查 DNS 服务器设置,或尝试在客户端的hosts文件 (C:\Windows\System32\drivers\etc\hosts) 中手动添加服务器 IP 和名称的映射。
- Ping IP 地址:在客户端电脑上打开命令提示符(CMD),输入
-
检查网络共享:
- 在文件资源管理器的地址栏中,输入
\\<服务器IP地址>或\\<服务器计算机名>,然后按回车,如果可以打开,说明网络连接和文件共享基本正常,问题可能出在其他依赖 RPC 的应用上。
- 在文件资源管理器的地址栏中,输入
步骤 2:检查防火墙 (最关键的排查点)
这是导致 1722 错误的“头号嫌疑犯”。
-
暂时禁用防火墙测试:
- 在客户端和服务器端,暂时禁用 Windows Defender 防火墙。
- 客户端:
控制面板->Windows Defender 防火墙->启用或关闭 Windows Defender 防火墙-> 将“专用网络设置”和“公用网络设置”都改为“关闭 Windows Defender 防火墙”。 - 服务器端:操作同上。
- 禁用后,再次尝试你的操作,如果成功,100% 是防火墙规则的问题。
-
配置正确的防火墙规则:
- 如果禁用后问题解决,请立即重新启用防火墙。
- 你需要为 RPC 服务添加入站规则。
- 服务器端:
- 打开
高级安全 Windows Defender 防火墙。 - 点击
入站规则->新建规则...。 - 选择
程序,点击下一步。 - 选择
此程序路径,然后浏览到C:\Windows\System32\svchost.exe,点击下一步。 - 选择
允许连接,点击下一步。 - 勾选
域、专用、公用(根据你的网络环境选择),点击下一步。 - 为规则命名,
Allow RPC (svchost),然后点击完成。
- 打开
- 重要提示:RPC 使用的端口是动态的,所以直接开放端口不可靠,通过允许
svchost.exe并配合服务配置,是最稳妥的方法,你也可以搜索“RPC 服务防火墙规则”,微软官方有详细的指导文档。
步骤 3:检查服务器端服务
如果防火墙没问题,我们来检查服务器上必须运行的服务。
- 打开服务管理器:按
Win + R,输入services.msc,回车。 - 找到并确保以下服务正在运行,启动类型”为“自动”或“手动”:
- RPC Endpoint Mapper:必须运行,这是核心。
- RPC Locator:对于文件共享等功能,建议运行。
- Function Discovery Provider Host
- Function Discovery Resource Publication
- SSDP Discovery 和 UPnP Device Host:如果涉及网络设备发现。
- 如何启动服务:
- 双击服务,查看“服务状态”,如果不是“正在运行”,点击“启动”。
- 如果启动失败,检查“依存关系”选项卡,看是否有其他依赖服务未启动。
- 如果服务被禁用,将“启动类型”从“禁用”改为“自动”或“手动”,然后重启服务。
步骤 4:检查 DCOM 配置
如果以上步骤都无效,问题可能出在 DCOM 的权限上。
- 打开
组件服务:按Win + R,输入comexp.msc,回车。 - 展开
组件服务->计算机->我的电脑。 - 右键点击
我的电脑,选择属性。 - 切换到
默认属性选项卡,确保在此计算机上启用分布式 COM已勾选。 - 切换到
COM 安全选项卡。- 在
访问权限和启动和激活权限中,点击编辑。 - 确保你的用户账户(如
Authenticated Users或Everyone,以及SYSTEM)至少拥有“本地访问”和“远程访问”权限,通常默认权限是足够的,但如果被修改过,可能会导致问题。
- 在
步骤 5:系统文件检查
如果怀疑是系统文件损坏,可以运行 SFC 和 DISM 工具。
- 以管理员身份打开命令提示符。
- 输入
sfc /scannow并回车,等待扫描完成,它会自动修复损坏的系统文件。 - SFC 无法修复,再运行 DISM:
DISM /Online /Cleanup-Image /RestoreHealth
- 完成后重启电脑。
总结与最终建议
| 问题类别 | 核心检查点 | 解决方案 |
|---|---|---|
| 网络问题 | Ping IP、Ping 主机名、检查网关/DNS | 修复物理连接、检查 IP/DNS 配置 |
| 防火墙 | 临时禁用测试 | 配置正确的 svchost.exe 入站规则 |
| 服务问题 | services.msc 中的 RPC 相关服务 |
启动服务、设置启动类型为“自动” |
| DCOM 权限 | comexp.msc 中的访问/激活权限 |
添加必要的用户权限 |
| 系统文件 | 系统运行不稳定 | 运行 sfc /scannow 和 DISM |
行动路线图:
- 先 Ping:区分是网络问题还是 RPC 协议问题。
- 再防火墙:这是最容易解决也最常见的原因,优先排查。
- 后服务:确认服务器上的 RPC 服务都在正常工作。
- 最后高级:如果以上都无效,再考虑 DCOM 和系统文件问题。
对于普通用户来说,90% 的 “1722 RPC 服务器不可用” 错误都出在 防火墙规则 或 服务器端 RPC 服务未启动 上,按照这个思路排查,通常都能找到问题所在。

