首页/网络/常用端口速查/502 mbap Modbus TCP 工控协议
500-599 系统端口99 条

502 mbap Modbus TCP 工控协议

Modbus Application Protocol(Modbus TCP):工业控制领域最常用的现场协议端口,PLC、电表、传感器普遍用它读写寄存器。

常用端口速查网络更新于 2026-10-13

Modbus TCP 与 502 端口

502 是 Modbus TCP 的端口,属于工业控制领域使用最广的现场协议。报文结构极简:事务号、功能码与数据区,好处是各类设备都能互通,代价是协议本身没有认证也没有加密。任何能连上 502 的人都可以读取寄存器,具备写功能码时还能直接改写 PLC 的输出状态。因此它的安全边界不来自协议,而来自网络分区与工业防火墙的白名单策略。

基本信息

服务Modbus TCP(mbap 端口)
协议TCP(UDP 亦有实现)
规范Modbus Application Protocol 系列规范
适用领域工业自动化、电力、楼宇与能源监控
常见设备PLC、电表、变频器、采集网关
安全等级OT 网络内,与 IT 网络隔离

典型使用场景

  • 上位机采集:组态软件周期性读取 PLC 与仪表的实时数据
  • SCADA 联调:控制器之间按约定寄存器地址交换状态
  • 能源计量:电表与水表数据经网关汇聚到能源管理平台
  • 设备调试:现场用采集工具核对寄存器数值与设备手册是否对应
  • 数据上云:由采集网关把现场数据转换为上层协议再上传

读取寄存器验证连通

读取寄存器验证连通
modpoll -m tcp -a 1 -r 0 -c 4 192.0.2.10     # 从机地址 1,从偏移 0 起读 4 个保持寄存器
modpoll -m tcp -a 1 -r 0 -c 4 -t 1 192.0.2.10  # 换用其他寄存器类型读取
nc -vz 192.0.2.10 502                          # 网络层连通性
sudo tcpdump -ni eth0 'tcp port 502' -c 20     # 抓包观察请求与响应

常用功能码

功能码作用性质
1 与 2读线圈与读离散输入只读状态量
3 与 4读保持寄存器与读输入寄存器读数值量
5 与 6写单个线圈或单个寄存器可改变设备状态
15 与 16批量写多个线圈或寄存器影响范围更大,需重点管控

常见故障与定位

现象可能原因处置方向
读不到值从机地址或寄存器偏移与手册不符对照设备手册核对地址基准
时通时断现场链路或网关负载过高检查链路质量与采集周期
写操作无效果设备侧写保护或权限限制确认设备是否允许远程写入
整个网段受影响把 OT 端口暴露给了不受控来源按区域做白名单策略
把 502 直接暴露到公网等于把 PLC 控制权悬在网上;OT 网络必须与办公网隔离,跨区访问走工业防火墙按地址与功能码白名单放行。
地址基准容易出错:不同设备与工具对寄存器地址采用从零计数或从一计数,读到的数值与手册不一致时先核对基准,再怀疑设备故障。
IT 思维迁移要谨慎:传统防火墙按端口放行在 OT 环境远远不够,应根据功能码与寄存器范围限制可写操作,并保留完整的采集与写入审计记录。

易错点

  • Modbus TCP 无认证无加密,端口可达几乎等于寄存器可写
  • 用办公网的防火墙策略管理 OT 流量,缺少功能码级别的限制
  • 把 502 暴露到公网或非受控网段,直接放大生产事故风险
  • 寄存器地址基准判断错误,误把采集失败当成设备故障

数据来源与参考

  • Modbus Application Protocol Specification V1.1b3(Modbus.org)
  • IANA 端口注册表

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌