所以我在linux 2.6内核上运行了两个用户空间应用程序(比如应用程序A和B)。
app A使用下面的套接字
发送带有自定义以太网类型(ETH_FOO)的原始数据包socket(PF_PACKET, SOCK_RAW, htons(ETH_FOO));
如果应用B使用ETH_P_ALL打开原始套接字并且无需绑定就侦听所有接口,则它可以成功接收A发送的类型为ETH_FOO的pkts。
但是如果B打开类型为ETH_FOO的套接字,则不会发现任何数据包。我只想捕获ETH_FOO pkts。可能是什么问题?
这是我的第一个问题。请原谅我的错误,如果有的话。此外,我无法复制整个代码,因为它不是我的,而且有点具有代表性。