【问题标题】:Display packet's detail using libpcap like Wireshark使用 libpcap 显示数据包详细信息,如 Wireshark
【发布时间】:2014-03-25 11:33:38
【问题描述】:

在wireshark中,它能够显示数据包的详细信息,如ip.src、ip.port、info等。单击数据包时,数据包的详细信息显示在(中)底部。

有没有办法显示详细信息(在 tshark 中称为 pdml),即 Frame、Ethernet,如 Wireshark 中使用 libpcap 显示的那样?我知道我们可以使用struct pcap_pkthdr 获取源地址、目标地址,但我计划构建一个类似于 Wireshark 的应用程序,因此需要获取 Wireshark 显示的详细信息。这里的任何专家都想分享我能够与之相关的任何网站或任何来源?谢谢。

【问题讨论】:

    标签: wireshark packet pcap libpcap


    【解决方案1】:

    但我计划构建一个类似于 Wireshark 的应用程序,因此需要获取 Wireshark 显示的详细信息。

    那么您将需要复制 Wireshark 开发人员所做的部分或全部工作。

    Ohloh's page on Wireshark 表示 Wireshark “已经有 119 位贡献者提交了 52,184 次提交,代表了 2,849,177 行代码”,并且“从 1998 年 9 月的第一次提交开始,它“花费了大约 840 年的努力(COCOMO 模型)大约 13 小时前的最近一次提交”。 (这更像是“开发人员 840 年的努力”;并不是说 Gerald 在 840 年前就开始研究它并且全部都是自己完成的。:-))

    大部分代码行都在解析器核心和使用它的解析器中。

    如果您不关心使用 Wireshark 的代码(这意味着您愿意将您的程序的源代码提供给任何获得该程序的人,并愿意让 他们将源代码提供给任何他们想要的人),然后您可以尝试使用 Wireshark 和 TShark 使用的相同 Wireshark 库构建您自己的程序(该库的源代码在 epan Wireshark 源的目录及其子目录)。

    如果您只关心一小部分协议,则不需要所有这些。

    Libpcap 不会帮助你;它是一个捕获数据包的库,将它们写入捕获文件并读取这些捕获文件,并且包含没有用于分析原始文件数据的代码。

    【讨论】:

      猜你喜欢
      • 2017-12-16
      • 1970-01-01
      • 2010-10-16
      • 1970-01-01
      • 1970-01-01
      • 2016-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多