我正在编写一个用于分析某些类型数据包的程序。我得到了包含tcpdump格式的测试包的转储文件。有没有办法将此转储发送到其中一个接口?我认为tcpdump可以自己做(不幸的是它不是)。我唯一能做的就是通过wireshark查看数据包(这显然不是可行的方法)。
我可以使用libpcap函数pcap_open_offline()
,遗憾的是我使用的pcap_loop()
似乎与pcap_open_offline()
不兼容,将代码重写为pcap_next()
会非常痛苦。是否有任何程序可以将数据包发送到接口?
答案 0 :(得分:7)
您是否尝试查看tcpreplay已完成的操作:
重播存储在pcap文件中的网络流量
答案 1 :(得分:0)
较新版本的libpcap提供了一个pcap_inject()
函数,可用于将数据包写回。
您可以看到someone's testing program to use pcap_inject()
over on UbuntuForums。