【问题标题】:Is there a library for parsing/formatting TCP packets or anything that would help doing it?是否有用于解析/格式化 TCP 数据包的库或任何有助于它的库?
【发布时间】:2011-05-28 05:37:33
【问题描述】:

我的应用程序使用 tcp 连接到我的服务器,我正在对它进行数据包嗅探,以查看它是如何使用 Wireshark 工作的,我首先想到的是以十六进制形式发送给我的数据包,因此手动查找和解码非常很难。

所以我很难做一个解析器,我会做如下事情:

<packet id="0x01" name="undefined">
    <part name="userID" type="d"/>
</packet>

其中 d 代表十进制,将获得 4 个字节。

我的目标是做这样的事情:

在它下面是一个列表视图,包名称为根,内部的部分名称及其值。

我环顾四周,找到了可以嗅探数据等的库,但我真正想要的是可以帮助我解析/格式化它的东西,周围有吗?

【问题讨论】:

  • 你试图嗅探什么协议?
  • @Yaur TCP 就像标题一样,如果这没什么特别重要的话,它只是一个 c# 应用程序,它通过 TCP 套接字连接到 c# 中的服务器。
  • 我不是说什么传输协议,我是说什么应用层协议。这可能是 HTTP、RDP 等。
  • @Yaur 不太确定如何告诉它我在这方面的经验并不多,我真的不认为关于如何格式化和解析它的问题......我所做的只是一个在 c# 中具有身份验证的基本客户端/服务器,并想嗅探它以了解我使用 wireshark 所做的事情,但输出很复杂,仅通过查看即可理解,我想对其进行格式化。

标签: c# formatting packet sniffing


【解决方案1】:

您正在寻找的是解码后的数据包,不幸的是,从 TCP 的角度来看,您所看到的已经是解码后的数据包。
要获得更多信息,您需要一个在更高级别协议上运行的协议解析器。对于现成的协议,这样的解析器可能已经存在,但如果您推出自己的协议,您还需要推出自己的解析器。有一个tutorial on codeproject 用于为wireshark 构建一个自定义解析器,如果你想走这条路,它应该可以帮助你入门。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 2011-05-03
    • 1970-01-01
    • 2011-02-08
    • 2012-05-27
    • 1970-01-01
    相关资源
    最近更新 更多