EtherCAT ubuntu wireshark

IGH EtherCAT Master 1.6.4 + Ubuntu Wireshark 只抓 EtherCAT

报文配置说明(纯中文)

================================================

一、基础认知(非常重要)

================================================

  1. EtherCAT 的本质
  • EtherCAT 不是 TCP/IP、不是 UDP

  • EtherCAT 是"裸以太网帧"

  • EtherType 固定为:0x88A4

结论: - 用 IP 过滤一定抓不到 EtherCAT - 必须在二层(以太网层)抓包

================================================ 二、确认 IGH 使用的网卡

================================================

  1. 查看所有网卡 命令: ip link

常见物理网卡名称: - eth0 - eno1 - enp3s0

不要使用: - lo - docker0 - virbr0 - br-*

  1. 确认 IGH Master 绑定的网卡 命令: ethercat master

示例输出: Master0 Phase: OP Active: yes Link: UP Device: enp3s0

结论: Wireshark 必须抓 Device 指定的网卡

================================================ 三、Wireshark

抓包权限配置(Ubuntu) ================================================

推荐方式(普通用户抓包):

  1. 运行: sudo dpkg-reconfigure wireshark-common

选择:Yes

  1. 把用户加入 wireshark 组: sudo usermod -aG wireshark $USER

  2. 注销并重新登录

临时方式(不推荐): sudo wireshark

================================================ 四、Wireshark 抓

EtherCAT 的正确配置 ================================================

  1. 选择接口
  • 选择 IGH 使用的物理网卡(如 enp3s0)
  1. 抓包过滤器(Capture Filter,推荐) 在开始抓包前输入: ether proto

0x88a4

作用: - 只抓 EtherCAT 报文 - 减少无关流量

  1. 显示过滤器(Display Filter) 抓包后使用: ethercat

或: eth.type == 0x88a4

================================================

五、标准抓包流程(一步不漏)

================================================

  1. 可选:停止 EtherCAT Master sudo systemctl stop ethercat

  2. 打开 Wireshark

  • 选择正确网卡

  • 不设置显示过滤器

  1. 点击"开始抓包"

  2. 启动 EtherCAT Master sudo systemctl start ethercat

  3. 设置显示过滤器: ethercat

应看到: - LRW - LRD - LWR - BRD / BWR - FPRD / FPWR

================================================

六、只看过程数据(PDO)的过滤方法

================================================

  1. 只看 LRW 周期帧: ethercat.cmd == 0x0C

  2. 只看某个从站地址(ADP): ethercat.adp == 0x0001

  3. 只看寄存器/SDO 访问: ethercat.cmd == 0x05 || ethercat.cmd == 0x06

================================================ 七、常见问题与排错表

================================================

问题:完全抓不到包 原因:抓错网卡 解决:使用 ethercat master 确认网卡

问题:只有 ARP / IP 包 原因:过滤条件错误 解决:使用 ether proto 0x88a4

问题:Wireshark 不解析 EtherCAT 原因:Wireshark 版本过低 解决:升级到

2.6 以上

问题:数据解析异常 / malformed 原因:网卡 Offload 解决:关闭 Offload

================================================ 八、强烈建议:关闭网卡

Offload ================================================

命令(示例 enp3s0): sudo ethtool -K enp3s0 rx off tx off tso off gso

off gro off lro off

说明: - 否则 EtherCAT 帧可能被硬件合并 - 会导致解析错误

================================================ 九、tcpdump

快速验证(非常推荐) ================================================

命令: sudo tcpdump -i enp3s0 -e ether proto 0x88a4

如果 tcpdump 能看到 EtherCAT: - 说明 IGH 正常 - Wireshark

问题在权限或过滤

================================================ 文档结束

================================================

相关推荐
ACP广源盛139246256739 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
Empty-Filled10 小时前
AI生成测试用例功能怎么测:一个完整实战案例
网络·人工智能·测试用例
码云数智-大飞10 小时前
本地部署大模型:隐私安全与多元优势一站式解读
运维·网络·人工智能
jinanwuhuaguo11 小时前
(第二十九篇)OpenClaw 实时与具身的跃迁——从异步孤岛到数字世界的“原住民”
前端·网络·人工智能·重构·openclaw
等风来不如迎风去11 小时前
【win11】最佳性能:fix 没有壁纸,一直黑屏
网络·人工智能
全球通史11 小时前
RDKS100 GPU量化环境配置
ubuntu
Harvy_没救了12 小时前
【网络部署】 Win11 + VMware CentOS8 + Nginx 文件共享服务 Wiki
运维·网络·nginx
嵌入式×边缘AI:打怪升级日志12 小时前
100ASK-T113 Pro 开发板 Bootloader 完全开发指南
linux·ubuntu·bootloader
汤愈韬12 小时前
NAT Server 与目的Nat
网络·网络协议·网络安全·security
2401_8734794013 小时前
断网时如何实时判断IP归属?嵌入本地离线库,保障风控不中断
运维·服务器·网络