2015-10-21 256 views
0

我正在尝试创建一个能够读取pcap文件的程序。如何使用pcap获取数据包详细信息c

与pcap_open_offline和pcap_next_ex函数,我已经能够得到一些信息,如数据包的头和数据。

但是在这个文件中有这样更多的信息,如协议,源IP,目的IP,等等

首先,我想这是信息的“数据”部分,以十六进制我说的对?

有没有办法,而不使用jnetpcap来获取这些信息? 我是否必须创建一个能够将hexa转换为可读数据的函数? 这可能吗?

回答

0

但是在这个文件中有这样更多的信息,如协议, 源IP,目的IP,等等

首先,我想这是信息的“数据”部分,在 十六进制我是对不对?

不,这是在标题中。

有没有一种方法,而不使用jnetpcap来获取这些信息?

解析标题。 libpcap为此提供了一些帮助宏;请参阅http://www.tcpdump.org/pcap.html官方文档。

+0

不是只包含在pcap_pkthdr结构中的头文件吗?哪些只包含时间戳,长度和捕获长度? – Charrette

+0

@Charrette:我们正在讨论不同类型的标题,然后!当然,目标,源和端口都在* IP头文件*中。 –

+0

是的,但IP标头在哪里呢?当我打开我的pcap文件时,每个数据包中都必须有一个? – Charrette