0

我正在linux为一些隧道活动编写一个内核模块。该模块将从网络堆栈中获取数据包并对其执行一些操作。从底部将数据包注入堆栈的最佳方法是什么(模拟以太网数据包到达线路),以便数据包遍历整个接收路径并传递到我的模块。

我的模块使用内核br_handle_frame_hook挂钩来获取数据包,这意味着它不能与 linux 本机bridge模块共存。任何想法将不胜感激。

4

3 回答 3

4

考虑使用 NetFilter

http://www.phrack.org/issues.html?issue=61&id=13

TAP 会很棒,如果你在用户空间工作,你不是

于 2012-12-18T09:49:09.750 回答
1

我相信TAP设备是您正在寻找的 - 一种从用户空间发送/接收以太网数据包的好方法

于 2012-12-18T09:43:11.040 回答
-1

我建议在我之前像@raber 一样点击。我还建议阅读此 excelet 教程:http ://backreference.org/2010/03/26/tuntap-interface-tutorial/ 。

您询问是否可以以非编程方式进行点击,然后将流量重播到其中。答案是肯定的。寻找“持久性”选项(顺便说一句,如果您不想下载已经可以做到的工具,也可以使用您可以自己编写的简短工具以编程方式完成)。您可能还希望/需要定义可能使用水龙头的用户(或者只是 sudo 您的操作)。

于 2015-12-21T11:46:07.807 回答