我正在使用以下命令在内核中注册网络设备通知程序:
netdev_rx_handler_register(dev, my_handler, data)
收到网络 SKB 后,我检查它们,如果 ethertype 设置为ETH_P_ARP
我打印skb->data
,其中应包含 ARP 信息,但是所有字节都设置为 0,即使skb->len
对应于 ARP 请求长度。
它在我的普通 PC 上工作,并正确打印 ARP 字段,但在远程企业级服务器上失败。
我在两个环境中都使用 Ubuntu 22.04.3 LTS 和 5.15.0-87-generic。
这可能与网络设备有关还是系统级问题?