【发布时间】:2016-02-03 14:05:03
【问题描述】:
我想检索网络上所有以太网帧的以太网帧位,无论它们是否注定(MAC 级别)用于我的机器。
其逻辑必须在内核级别。
所以为了实现这一点,我需要构建一个单独的内核模块或以太网驱动程序或以太网网络接口
注意:我刚刚开始为我的项目学习 Linux 内核模块开发。如果这里不适合发布这个问题,我很抱歉。
【问题讨论】:
-
其逻辑已经在内核级别实现。要使用它,请查看 libpcap,以及关于“无论它们是否注定(MAC 级别)用于我的机器”的接口混杂模式。具有混杂模式的 libpcap 可以从用户空间完成您需要的一切。
-
libpcap 通过复制数据包而不是通过拦截数据包来捕获帧。我希望能够接收网络上的所有帧,并将修改后的帧发送或重新注入 NIC 卡。
标签: linux-kernel network-programming linux-device-driver ethernet