由于某些研究原因,我使用libtrace来修改捕获数据包的有效负载。在这种情况下,我必须计算修改后的数据包的新校验和。我的问题是,有一种简单的方法可以做到这一点,例如,libtrace中是否有一个函数可以做到这一点?任何评论都表示赞赏。
答案 0 :(得分:1)
目前libtrace中没有专门用于此功能的API函数,但是有一些代码可以为tracereplay工具内部的数据包生成正确的IPv4,TCP和UDP校验和,您可以将其用作编写自己的函数的基础。
代码本身可以在libtrace源代码的tools/tracereplay/tracereplay.c
中找到。 libtrace源本身可以从here下载(如果你通过打包系统获得libtrace)。
对于libtrace问题,还有a mailing list更有可能获得及时响应。