返回主站|会员中心|保存桌面

菲尼克斯连接器专营    

菲尼克斯连接器、连接端子

新闻分类
  • 暂无分类
联系方式
  • 联系人:吴经理
  • 电话:18576370666
  • 邮件:18576370666@qq.com
首页 > 新闻中心 > OPC通讯,测试就出现RPC服务器不可用!
新闻中心
OPC通讯,测试就出现RPC服务器不可用!
发布时间:2025-12-17        浏览次数:1        返回列表

 OPC 通讯测试中出现 RPC 服务器不可用 故障,核心原因是 OPC 服务器与客户端之间的 RPC(远程过程调用)协议交互失败,该故障常见于 OPC DA 协议(基于 DCOM/RPC 实现),与网络配置、权限设置、服务状态直接相关。以下是原理分析→分步排查→故障解决的完整方案:

一、RPC 故障核心原理

OPC DA 通讯依赖 DCOM(分布式组件对象模型) 实现跨设备数据交互,而 DCOM 底层通过 RPC 协议 传输控制指令和数据。当客户端向 OPC 服务器发起连接请求时,需通过 RPC 协议建立会话;若 RPC 服务未启动、端口被拦截、权限不足或网络配置错误,就会触发 RPC 服务器不可用 报错。

注:OPC UA 协议基于 TCP/IP 直接通讯,不依赖 RPC/DCOM,极少出现此故障。

二、分步骤故障排查(优先级从高到低)

步骤 1:检查 RPC 相关服务状态(最基础)

RPC 服务是 Windows 系统核心服务,必须确保 OPC 服务器和客户端的以下服务已启动且为自动运行

  1. 按下 Win+R,输入 services.msc 打开服务管理器。

  2. 找到并检查以下服务:

    服务名称作用启动类型状态要求
    Remote Procedure Call (RPC)RPC 协议核心服务自动正在运行
    RPC Endpoint Mapper分配 RPC 端口,匹配客户端请求自动正在运行
    OPC Server 服务(如 KEPServerEX、MatrikonOPC)第三方 OPC 服务器程序自动 / 手动正在运行
  3. 若服务未启动,右键启动;若启动失败,重启电脑后重试(部分服务依赖系统启动)。

步骤 2:排查网络连通性与防火墙拦截(最常见)

RPC 协议默认使用 135 端口 进行端口映射,同时会动态分配随机端口(1024-65535)传输数据,防火墙或网络隔离会直接阻断通讯。

  1. 基础网络测试

    • 在客户端电脑打开 CMD,执行 ping OPC服务器IP -t,确保丢包率为 0(网络通畅)。

    • 执行 telnet OPC服务器IP 135,若提示 “无法打开连接”,说明 135 端口被拦截。

  2. 防火墙配置(关键)

    • 规则 1:放行 端口 135(TCP/UDP)。

    • 规则 2:放行 OPC 服务器程序(如 KEPServerEX.exe)的所有端口。

    • Windows 防火墙

    • 第三方防火墙 / 杀毒软件:临时关闭防火墙(仅测试用),若故障消失,需将 OPC 服务器 / 客户端程序加入白名单。

    1. 打开「Windows Defender 防火墙」→「高级设置」。

    2. 分别在 入站规则 和 出站规则 中,添加两条放行规则:

  3. 网络隔离排查:若客户端与服务器不在同一网段,确认路由器 / 交换机未限制 RPC 协议,或直接使用交叉网线直连测试。

步骤 3:配置 DCOM 权限(OPC DA 核心)

OPC DA 依赖 DCOM 权限控制,权限不足会导致 RPC 调用被拒绝,需在 OPC 服务器电脑 上配置 DCOM 权限:

  1. 按下 Win+R,输入 dcomcnfg 打开「组件服务」。

  2. 依次展开 组件服务 → 计算机 → 我的电脑 → DCOM 配置

  3. 找到 OPC 服务器对应的 DCOM 组件(如 KEPServerEX 对应 Kepware.KEPServerEX.V6,通用 OPC 组件可找 OPCEnum)。

  4. 右键组件 → 属性 → 切换至以下标签页配置权限:

    标签页配置项操作要求
    常规身份验证级别设为  或 连接(降低验证门槛)
    安全启动和激活权限点击编辑,添加客户端电脑的用户账户(如 Everyone),授予 本地启动、本地激活、远程启动、远程激活 权限
    安全访问权限点击编辑,添加客户端账户,授予 本地访问、远程访问 权限
    标识登录身份选择 交互式用户 或 此用户(需输入管理员账户密码)
  5. 找到 OPCEnum 组件(OPC 枚举服务,用于客户端扫描服务器),重复上述权限配置步骤。

步骤 4:检查用户账户与权限一致性

RPC/DCOM 对用户账户权限敏感,需确保客户端与服务器的账户满足以下条件:

  1. 账户一致性:在客户端和服务器电脑上,创建相同用户名和密码的管理员账户,并用该账户登录两台电脑(避免权限验证失败)。

  2. 远程访问权限:在服务器电脑上,打开「系统属性」→「远程」,勾选 允许远程协助连接这台计算机 和 允许远程桌面连接(增强远程访问权限)。

  3. 避免来宾账户:禁用服务器的 Guest 账户,来宾账户默认无 RPC 调用权限。

步骤 5:OPC 客户端配置与兼容性测试

  1. 客户端 OPC 浏览器测试:使用 OPC 官方测试工具(如 OPC ScoutMatrikonOPC Explorer)连接服务器,若工具也报错,说明故障在服务器端;若工具连接成功,说明客户端程序配置错误。

  2. 32 位 / 64 位兼容性:若 OPC 服务器为 32 位,客户端需使用 32 位 OPC 组件(64 位系统需开启 32 位 DCOM 支持),否则会因位数不匹配导致 RPC 调用失败。

三、常见故障场景与对应解决方案

故障场景具体现象解决方案
同一电脑测试正常,跨电脑测试报错本地客户端能连接,远程客户端无法连接配置防火墙放行 135 端口 + OPC 程序,检查 DCOM 远程权限
重启服务器后故障消失,运行一段时间后报错RPC 服务内存溢出或端口耗尽重启 RPC 服务 + OPC 服务器,或升级 OPC 服务器版本(修复内存泄漏)
域环境下通讯失败域策略限制 RPC 协议联系网管,将 OPC 服务器 / 客户端加入域白名单,放行 DCOM/RPC 权限

四、排查总结流程

  1. 先确认 RPC 核心服务和 OPC 服务器服务已启动。

  2. 用 ping/telnet 测试网络和 135 端口连通性,关闭防火墙测试。

  3. 在服务器端配置 DCOM 权限(启动、激活、访问权限)。

  4. 用 OPC 测试工具验证服务器是否正常,排除客户端程序问题。

收缩
  • QQ咨询

  • 电话咨询

  • 18576370666
  • 添加微信客服