标签: c network-programming
libpcap只能读取数据包,我怎样才能更改呢?
基本上我想注册一个对所有传入数据包进行操作的回调函数,
怎么办呢?
答案 0 :(得分:2)
这是什么类型的流量?你想怎么修改它?什么操作系统?
在linux上,您可以使用iptables让内核为您修改数据包。
如果那不能做你想要的(即你需要把数据包送到用户空间),你可以查看netfilter_queue。或者作为一个更简单的替代方法,使用iptables REDIRECT规则将所有数据包发送到单个端口,并编写应用程序以侦听该端口。