使用像Wireshark这样的libpcap显示数据包的详细信息

时间:2014-03-25 02:19:43

标签: wireshark packet pcap libpcap

在wireshark中,它能够显示数据包的详细信息,如ip.src,ip.port,info等。当点击数据包时,数据包的详细信息显示在(中间)底部。 packet's details

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

1 个答案:

答案 0 :(得分:1)

  

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

然后,您需要复制Wireshark开发人员完成的部分或全部工作。

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

这些代码行中的大多数都在解剖器核心和使用它的解剖器中。

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

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

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