ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Wireshark 抓包指南:用协议分析拆解智能电表 DLMS/COSEM 通信

Wireshark 抓包指南:用协议分析拆解智能电表 DLMS/COSEM 通信 Wireshark 抓包指南用协议分析拆解智能电表 DLMS/COSEM 通信【免费下载链接】wiresharkRead-only mirror of Wiresharks Git repository at https://gitlab.com/wireshark/wireshark. Youre welcome to submit pull requests there.项目地址: https://gitcode.com/gh_mirrors/wi/wiresharkWireshark 是一款网络协议分析器抓包、协议解析、流量过滤都是它的日常。这篇文章带你用它完成一次智能电表 DLMS/COSEM 通信的完整分析从选对捕获接口到看懂解析树里的关键字段最后排查抓不到包这类常见问题。 用它做什么DLMS/COSEM 抓包的典型场景验证新电表固件是否正确完成关联建立和版本协商排查抄表失败定位是请求没发出、没响应还是返回了错误码核对读数内容确认采集到的寄存器、时钟、需量对象符合业务预期评估通信质量观察重传、超时和连接中断发生的时点对比升级前后行为差异为固件回归测试留证据️ 环境与界面初接触捕获接口与参数怎么配打开 Wireshark 首屏是捕获接口选择界面核心就是选对网口。接口选择连了电表网关或采集器的物理网口。不确定时先看各接口的活动指示灯或短暂断开网线看哪个接口丢包。监听方向如果接口上还有其他流量可以勾选只监听指定方向减少干扰。捕获参数在 Capture Options 里建议勾选自动轮转文件File number 模式避免长时间抓包把磁盘写满缓冲区调到 4 MB 以上防止丢包。接口过滤如果现场流量混合了其他业务可以在 Capture Filter 栏写tcp port 40594059 是 DLMS/COSEM 的默认 TCP 端口部分设备也走 UDP。 核心操作流程四步完成一次 DLMS 会话分析锁定目标流量目标把视图收敛到电表通信上。操作在显示过滤器栏输入dlms并回车。预期结果列表里只剩 DLMS 报文每行能看到 Client/Server 方向、APDU 类型和帧长度。展开报文解析树目标看清一条 get 请求到底取什么数据。操作选中一条报文在中间面板逐层展开 DLMS 协议树。预期结果能看到版本协商、逻辑名类/实例/属性和被请求的对象值树节点全部有可读名称而不是裸十六进制。确认请求响应配对目标判断业务是否成功。操作查看请求后的 response 报文重点看data access result节点。预期结果成功读取时结果为 success失败时节点会显示对应的错误枚举值。跟踪完整会话流目标把一次完整交互按时间线还原。操作右键一条 DLMS 报文选择 Follow TCP Stream。预期结果弹出会话窗口从关联建立到结束的所有应用层报文按顺序拼成一条完整会话。 如何看懂输出解析器关键字段速览抓对包之后解析树里这五个字段最值得盯字段含义关注点dlms.apdu报文类型如关联建立、get、set、action请求与响应是否成对出现dlms.proposed_dlms_version_number/negotiated双方提议和最终协商的版本号协商结果是否符合电表固件预期dlms.class_id/instance_id/attribute_id目标对象的逻辑名对应寄存器、时钟等类取数对象是否正确如寄存器实例号dlms.data_access_resultget 请求的返回码非 success 即访问失败需对照错误枚举定位原因dlms.block_number/last_block块传输的序号与结束标志长数据是否分块完整收齐⚠️ 常见坑速查抓包异常怎么办过滤器写了却一个包都没有多半是端口或接口选错了先清空过滤器用原始流量确认电表实际连的端口和方向再按真实端口收窄过滤。提示 Previous segment not captured 或树里出现断档捕获缓冲太小或选错接口导致丢包调大缓冲区、确认抓的是电表直连的网口后重抓。TCP 通了但 DLMS 树展开是裸字节COSEM 协议没启用或数据不完整在 Preferences → Protocols 里确认 COSEM/DLMS 处于启用状态并用流跟踪确认会话完整。 进阶扩展DLMS/COSEM 解析器源码在哪packet-cosem.cDLMS/COSEM 主解析器定义了 4059 端口的挂载逻辑和全部 dlms.* 字段。cosem.asnCOSEM 对象的 ASN.1 定义想核对对象模型和编码规则时从这里入手。packet-sml.cSMLSmart Metering Language解析器做抄表报文落地存储分析时可配合使用。Wireshark 把电表黑盒通信变成了可逐字段核对的解析树是抄表排障和固件验证的高性价比工具。下一步可以拿一份真实抄表失败现场的数据按上面的四步流程走一遍把问题定位到具体 APDU。【免费下载链接】wiresharkRead-only mirror of Wiresharks Git repository at https://gitlab.com/wireshark/wireshark. Youre welcome to submit pull requests there.项目地址: https://gitcode.com/gh_mirrors/wi/wireshark创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表