我必须获取有关 pcap 文件的 lipcap 版本和链接层的信息。所以,我通过 Python 编写代码。但是,我不太了解蟒蛇。
我的代码如下:
import dpkt
import socket
import sys
f = open('filename')
pcap = dpkt.pcap.Reader(f)
for ts, buf in pcap:
print ts, len(buf)
我必须获取有关 pcap 文件的 lipcap 版本和链接层的信息。
对于链路层标头类型,快速查看 dpkt 代码似乎有一个datalink
用于 a 的方法Reader
,它返回链路层标头类型,因此请尝试pcap.datalink
.
至于 libpcap 版本:
我想获取我创建的文件的 libcap 版本。
不幸的是,1)并非所有 pcap 文件都是用 libpcap 创建的,2)pcap 文件中没有地方存储 libpcap 版本(有一个版本字段,但它用于文件格式的版本号,而不是库),所以无法从捕获文件中获取创建文件时使用的 libpcap 版本 - 该信息不在文件中,也不可能在文件中(没有放置它的地方,也不能保证libpcap 一开始就参与了文件的创建)。