Wireshark包开始识别

Ser*_*erg 2 binary sniffer pcap wireshark packet-sniffers

我有一个由Wireshark创建的".pcapng"二进制文件.

如何检测每个新包的开头?

是否有任何特定的字节序列?

或者,如何检测包的末尾?

小智 8

(我见过那些母语不是英语的人说的是"包"而不是"包" - 这两个词来自同一个词"pack",同一个词可能用于其他语言的两个概念 - 所以我假设你指的是网络数据包;在这种意义上,英语中通常不使用"包".)

pcap-NG文件格式在PCAP下一代转储文件格式文档中描述.pcap-NG文件是一系列块; 每个块在开头都有一个长度字段(最后,为了简化向后扫描文件).并非所有块都包含数据包; 这些块是分组块,扩展分组块和简单分组块.

请注意,libpcap 1.1及更高版本可以读取pcap-NG文件,因此任何使用libpcap读取捕获文件的程序都可以,如果使用libpcap动态喜欢并在libpcap共享库为1.1或更高版本的系统上运行,或者与libpcap静态链接1.1或更高版本,可以使用与读取pcap文件相同的API读取一些pcap-NG文件,而无需对程序进行任何更改.(pcap-NG文件包含多个接口,其中并非所有接口都具有相同的链路层标头类型或快照长度,因为当前的libpcap API不支持这种情况.)没有基于libpcap 1.1的WinPcap版本或者以后,所以WinPcap目前无法用于读取pcap-NG文件.

另一个可以读取pcap-NG文件的库是NTAR库.但是,它只能读取pcap-NG文件,而不能读取pcap文件.