远程串口

RFC 2217 服务端

共享本机物理串口,由远端客户端改变波特率、数据格式和 DTR/RTS。

本页内容

RFC 2217 服务端(共享本机串口)

RFC 2217 服务端把本机的物理串口通过 TCP 开放出去。远端客户端不仅能收发数据,还能改变波特率、数据格式、流控和 DTR/RTS——这些控制信息与数据走同一条连接。

普通 TCP 转发只搬运字节,不能远程修改串口参数。远端需要改变波特率、校验位或控制线时,两端都必须使用 RFC 2217。

它要求客户端能够直接访问本机的 IP 和监听端口,通常用于同一局域网,也可用于已经互通的 VPN。三种远程方式的取舍见 远程访问方案选型

现场端需要两个连接:一个打开物理串口,另一个作为 TCP Server 监听。再用 RFC 2217 桥接把两者连接起来。

  1. 配置第一个连接,选择设备对应的物理串口,并按设备手册设置串口参数。
  2. 通过 编辑 → 增加端口 创建第二个连接;端口选择 TCP/UDP,模式选择 TCP Server
  3. 跨机器访问时监听 AnyIPv4 或现场局域网地址,并填写端口,例如 6000;只绑 127.0.0.1 时其他机器无法连接。
  4. 打开 工具 → 桥接… → 新建,两端分别选择物理串口和 TCP Server,方向选择 A ⇄ B(双向)
  5. 勾选 启用自动打开两端端口。在协议标签页选择 RFC 2217 服务端,成帧保持 立即转发
  6. TCP 服务端客户端保持 同时只允许一个客户端
多端口工作区,左侧连接已打开 COM4 并显示设备回应,右侧连接是 TCP/UDP、模式 TCP Server、绑定 Any、端口 6000,状态栏显示正在 0.0.0.0:6000 等待连接
桥接之前先准备好两个连接:物理串口已经打开,TCP Server 已经在监听。
桥接对话框的连接标签页,A 端是 1: COM4,方向 A ⇄ B(双向),B 端是 2: 0.0.0.0:6000,勾选启用与自动打开两端端口,下方访问控制中的允许的客户端按行填写 IP 或网段
桥接把两个已有连接连起来,它不是一种新的端口模式。
桥接对话框的协议标签页,模式选择 RFC 2217 服务端(远端客户端可设置串口参数),成帧模式为立即转发,流控中 TCP 服务端的客户端为同时只允许一个客户端
协议必须选择 RFC 2217 服务端,而不是默认的透明转发。

访问控制与安全

允许的客户端 留空表示不限制来源。需要限制时,在其中逐行填写可信 IP 或 CIDR 网段。

RFC 2217 本身不提供加密和身份认证。不要直接暴露到不可信公网;优先在局域网或可信 VPN 内使用,并确认系统防火墙允许所选端口。

服务端自检

在通知远端连接之前,先确认本机这一侧已经就绪:

  1. TCP Server 连接显示正在等待或已经连接,监听地址和端口就是要告诉客户端的那一组。
  2. 桥接管理窗口状态为 运行中,A→B 与 B→A 的 dropped 计数保持为 0
  3. 物理串口已经打开,并且能收到设备对已知命令的应答。
桥接管理窗口,RFC2217-Server 状态为 Running,A→B 和 B→A 的收发字节数与 dropped 计数均为 0
桥接运行中且两个方向没有丢弃,是服务端正常工作的基础。

连接远端串口的那一侧怎么配置,见 RFC 2217 客户端。两端一起的端到端验收和逐层排障,见 通过 RFC 2217 直连远端串口

这篇文档是否有帮助?