Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数据包注入linux内核以模拟以太网数据包到达的最佳方法_Linux_Networking_Linux Kernel - Fatal编程技术网

将数据包注入linux内核以模拟以太网数据包到达的最佳方法

将数据包注入linux内核以模拟以太网数据包到达的最佳方法,linux,networking,linux-kernel,Linux,Networking,Linux Kernel,我正在为一些隧道活动编写一个linux内核模块。模块将从网络堆栈中获取数据包,并对其执行一些操作。从底部向堆栈中注入数据包(模拟以太网数据包在线到达)以便数据包穿过整个接收路径并传送到我的模块的最佳方式是什么 我的模块使用内核br\u handle\u frame\u hookhook来获取数据包,这意味着它不能与linux本机网桥模块共存。任何想法都将受到欢迎。我相信设备就是您想要的-从用户空间发送/接收以太网数据包的好方法我相信设备就是您想要的-从用户空间发送/接收以太网数据包的好方法考虑使

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


我的模块使用内核
br\u handle\u frame\u hook
hook来获取数据包,这意味着它不能与linux本机
网桥
模块共存。任何想法都将受到欢迎。

我相信设备就是您想要的-从用户空间发送/接收以太网数据包的好方法

我相信设备就是您想要的-从用户空间发送/接收以太网数据包的好方法

考虑使用NetFilter


如果您在用户空间工作,而不是在用户空间工作,请考虑使用NetFilter


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

我建议在我之前点击@raber。我还建议您阅读本Exceet教程:


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

我建议在我之前单击@raber。我还建议您阅读本Exceet教程:


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

我可以非编程方式使用tap吗。我的意思是创建一个TAP接口,然后在上面运行tcpreplay流量。这样行吗?我可以非编程地使用TAP吗。我的意思是创建一个TAP接口,然后在上面运行tcpreplay流量。这样行吗?创建一个TAP设备,然后在该接口上执行tcpreplay怎么样。然后这些数据包会沿着网络堆栈向上传输吗?我想他们should@VardaElentári如果IP表规则与接受/拒绝或转发数据包的C代码冲突,如何控制?通过设置优先级?如果两个冲突的设置都是NF_IP_PRI_first怎么办创建一个TAP设备,然后在该接口上执行tcpreplay呢。然后这些数据包会沿着网络堆栈向上传输吗?我想他们should@VardaElentári如果IP表规则与接受/拒绝或转发数据包的C代码冲突,如何控制?通过设置优先级?如果两个冲突的设置都设置为NF_IP_PRI_,该怎么办