这不仅仅是我想要在这里进行的捕捉。我想首先捕获数据包,然后实时检查特定数据的有效负载,将其删除,注入(inject)签名并将数据包重新注入(inject)堆栈以像以前一样发送。
我阅读了使用 IPFW 的 ipfw 转移套接字,它看起来很有前途。修改数据包并使用转移套接字将它们重新注入(inject)堆栈的示例怎么样?另外,出于好奇,是否可以使用 Java 从套接字读取数据,或者这会限制我进行打包处理和重新注入(inject)等操作吗?
最佳答案
参见转移 socket :Divert Sockets mini HOWTO .
它们的工作原理是将匹配特定 ipfw 规则的流量传递到一个特殊的原始套接字,然后该套接字可以将更改后的流量重新注入(inject)网络层。
关于c - 在 C 中连接到 TCP 堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63157/