libpcap只能读取数据包,我该如何更改它?
基本上我想注册一个对所有传入数据包进行操作的回调函数,
如何做到这一点?
最佳答案
这是什么样的流量?你想如何修改它?什么操作系统?
在 Linux 上,您可以使用 iptables 让内核为您修改数据包。
如果这不能满足您的要求(即您需要将数据包放入用户空间),您可以查看 netfilter_queue 。或者作为更简单的替代方案,使用 iptables REDIRECT 规则将所有数据包发送到单个端口,并编写一个应用程序来监听该端口。
关于c - 如何在 C 语言中更改来自 NIC 的传入数据包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5732482/