问候,

如何使用 Sharppcap 从捕获的数据包中确定数据包是否是 http 数据包?

我们能否确定 frpm TCP 数据包是否是 HTTP?

有帮助吗?

解决方案

根据 rfc2616 - 超文本传输​​协议 - HTTP/1.1:

HTTP 消息的版本由消息第一行中的 HTTP-Version 字段指示

因此,您可以检查数据包并扫描消息标头中的 HTTP 版本文本和/或 HTTP 协议的其他已知字段。虽然如果一条消息被分成多个数据包,此方法可能不是 100% 准确,但它可能足够好,至少作为第一次切割。

其他提示

sharppcap/packet.net的作者/维护者。

我有重组执行tcp是在在复杂的网络监控应用程序,以确定和遵循http使用几类和http sessions解析。这些都是充分单元测试和很好的注释。

它们可用于在二进制或源电平牌或者

编辑:为什么选这个了吗?花了数百小时来开发代码和测试,它是在溶液中的下降已重用。这当然是值得考虑之前重新实现相同的功能。

这听起来像你正在寻找一个TCP片段。如果从消息的开头来了,它会在第一行的HTTP版本,但如果你只是随便拉包断网,并希望能够告诉他们你的HTTP运气就出局了 - 有没有在TCP片断这表明什么是他们。要知道,唯一的办法是看整个谈话。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top