如何使用dpkt创建原始套接字(自定义TCP头)?

0 投票
1 回答
4159 浏览
提问于 2025-04-16 06:10

我正在写一个端口扫描器,所以我需要发送一个原始数据包。我查了一下,发现使用dpkt库会比较好,但我没有找到任何能帮助我的文档。所以请问有没有人能帮忙,解释一下如何创建一个带有自定义TCP头的数据包,也就是如何根据需要设置TCP头的标志。

谢谢!

1 个回答

1

这个问题有点老了,但我还是想回答,因为我也在寻找类似的解决方案。dpkt的文档几乎不存在。他们只提供了一些示例,联合开发者Jon Oberheide写了一些教程。所以如果你想使用dpkt,其实不难,你可以从这些教程中找到答案:

如果你想要一个更简单的接口,我用过以下这两个:

  1. http://libdnet.sourceforge.net/。它有一些基本的TCP和IP创建功能,但文档要好得多。

  2. 或者使用这个libnet的Python封装,http://pylibnet.sourceforge.net/。这个库非常强大,文档也很棒,但我在OS X上无法让注入功能正常工作。此外,到目前为止,每个版本都是测试版。

撰写回答