问题 libpcap IP数据包重组[关闭]


我正在寻找一个使用libpcap *在C中进行IP数据包重组的示例代码。是否正式在libpcap库中实现IP数据包碎片整理?我发现了这个提议: http://www.mail-archive.com/tcpdump-workers@lists.tcpdump.org/msg02991.html[this][1] 。

是否有任何IP数据包碎片整理的实现。

[1]: http://www.mail-archive.com/tcpdump-workers@lists.tcpdump.org/msg02991.html [+]

*寻找示例代码的原因仅仅是为了娱乐和学习,我不想花太多时间来编写IP数据包重组的代码。


6525
2018-01-31 18:26


起源

bountied。寻找相同的东西。 OP,@ sysfault,您可以分享的任何进展?;) - kagali-san
@mhambra,看看libnids的代码似乎使用了libpcap。实际上我把项目留了下来,不再看了,所以除了tsg的建议之外别无其他的建议。 - systemsfault


答案:


不,我很确定补丁没有进入libpcap。但你可以使用ip进行ip碎片整理(也可以使用TCP流) libnids


9
2018-01-31 20:57



tsg,libnids使用原始的unix套接字但我需要使用libpcap实现。因为我正在尝试学习libpcap并尝试用它来构建实验应用程序。 lwip还具有数据包重组/碎片整理功能。 - systemsfault
在简要介绍一下libnids代码后,它似乎确实使用了libpcap。例如,参见nids_pcap_handler()。 - tsg
简单一下,我可以说是的,它使用的是pcap;但是不能重新组装。要重新组装它似乎使用原始套接字,请参阅ip_fragment.c的源代码。 - systemsfault


如果您正在寻找可以进行IP重组的工具,您可以结账 IPDefragUtil。您还可以查看IP重组源代码 这里 和 这里


1
2018-01-12 22:55





Libpcap是一个捕获原始链路层数据包的库;它旨在被那些自己处理这些数据包的程序和库使用,包括IP片段重组等。因此,它不会,也不会进行IP重组;属于一个单独的库。


0
2017-11-22 19:05