如何在C中更改来自NIC的传入数据包?

libpcap只能读取数据包,我该如何更改

基本上我想注册一个对所有传入数据包进行操作的回调函数,

如何才能做到这一点?

这是什么类型的交通? 你想怎么修改它? 什么OS?

在linux上,您可以使用iptables让内核为您修改数据包。

如果那不能做你想要的(即你需要把数据包放到用户空间),你可以看一下netfilter_queue 。 或者作为一个更简单的替代方法,使用iptables REDIRECT规则将所有数据包发送到单个端口,并编写应用程序以侦听该端口。