分享

用wireshark抓取Modbus TCP协议包

 单垚 2017-05-15
最近刚刚接触工控协议,补习了一些modbus协议的相关知识,并尝试用Wireshark进行抓包,可以直观的观察协议数据包。接下来说一下具体的操作步骤。

首先采用的是modbus poll模拟主站设备,modbus slave模拟从站设备,安装虚拟串口软件VSPD,用于连接主站设备和从站设备。由于主站与从站在一台pc机上,此时的数据包并不经过网卡转发,使用wireshark抓取不到包。解决方法可以将数据包转发至网关,使wireshark能够有效抓包。

1.以管理员方式运行cmd 输入 route add 本机ip mask 255.255.255.255 网关ip   如下图:

 
 
2.打开vspd,创建两个虚拟串口com2和com3 。添加完毕后可在控制面板-设备管理器-端口处查看是否有com2和com3虚拟串口。(modbus ascii 和modbus rtu 若要模拟modbus tcp通讯可省略这一步)
 

3.打开modbus slave,点击connention 选择tcp模式,将下方id address设置为本机IP地址 

4.打开modbus poll,点击connection 选择tcp模式,同样将ip 设置为本机ip
 

5.打开wireshark,在过滤器处输入modbus,即可进行抓包分析
  
 
6.分析结束后不要忘记删除路由,否则会损耗计算机性能。
 
 

关于modbus协议开发与wireshark相关抓包方法可以参考清华大学出版社的:《Modbus软件开发实践》和《Wireshark数据包分析实战详解》
 
 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多