c - 在 C 中连接到 TCP 堆栈

标签 c tcp stack freebsd bsd

这不仅仅是我想要在这里进行的捕捉。我想首先捕获数据包,然后实时检查特定数据的有效负载,将其删除,注入(inject)签名并将数据包重新注入(inject)堆栈以像以前一样发送。

我阅读了使用 IPFW 的 ipfw 转移套接字,它看起来很有前途。修改数据包并使用转移套接字将它们重新注入(inject)堆栈的示例怎么样?另外,出于好奇,是否可以使用 Java 从套接字读取数据,或者这会限制我进行打包处理和重新注入(inject)等操作吗?

最佳答案

参见转移 socket :Divert Sockets mini HOWTO .

它们的工作原理是将匹配特定 ipfw 规则的流量传递到一个特殊的原始套接字,然后该套接字可以将更改后的流量重新注入(inject)网络层。

关于c - 在 C 中连接到 TCP 堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63157/

相关文章:

python - 如何在 python 中创建 Drop-Out Stack?

c - 平行管道没有在 C 中关闭?

c++ - 在 C/C++ 中使用 swift 库?

c - 如何将一维数组插入到函数中

c - 使用 32 位 block 对 1024 位 2 的补码进行有符号乘法

.net - "virtual execution stack"是什么?

c - 将客户端绑定(bind)到本地端口

Powershell - 如何设置 TCP 发送接收行结束字符? <CR> 与 <LF>

c++ - 为 C++ 中的应用程序最佳使用而打开的并行套接字/TCP 连接数

javascript - 我正在寻找一个带有缩进和着色的 javascript 记录器(它可以!特定于浏览器)