為什麼抓包檔案有好幾種型別?

哎呀我的天吶發表於2022-10-09

如果你留意過抓包檔案字尾名的話,會發現有 pcap、cap、pcapng 這幾種不同的字尾名。

為什麼會有好幾種型別呢?下面我來給你說道說道。

## pcap

這個是 libpcap 的格式,也是 tcpdump 和 Wireshark 等工具預設支援的檔案格式。

pcap 格式的檔案中除了報文資料以外,也包含了抓包檔案的元資訊,比如版本號、抓包時間、

每個報文被抓取的最大長度,等等。

## cap

cap 檔案可能含有一些 libpcap 標準之外的資料格式,它是由一些 tcpdump 以外的抓包程式生成的。

比如 Citrix 公司的 netscaler 負載均衡器,它的 nstrace 命令生成的抓包檔案,就是以.cap 為副檔名的。

這種檔案除了包含 pcap 標準定義的資訊以外,還包含了 LB 的前端連線和後端連線之間的 mapping 資訊。

Wireshark 是可以讀取這些.cap 檔案的,

只要在正確的版本上。

## pcapng

pcap 格式雖然滿足了大部分需求,但是它也有一些不足。比如,現在多網口的情況已經越

來越常見了,我們也經常需要從多個網路介面去抓取報文,那麼在抓包檔案裡,

如果不把這些報文跟所屬的網口資訊展示清楚,那我們的分析,豈不是要張冠李戴了嗎?

為了彌補 pcap 格式的不足,人們需要有一種新的檔案格式,pcapng 就出現了。

有了它,單個抓包檔案就可以包含多個網路介面上,抓取到的報文了。

我們可以看到,上圖中右邊的 pcapng 格式是包含報文的網路介面資訊的,而左邊的 pcap 就沒有。

當然,pcapng 還有很多別的特性,比如更細粒度的報文時間戳、允許對報文新增註釋、 更靈活的後設資料,等等。

如果你是用版本比較新的 Wireshark 和 tshark 做抓包,預設生成的抓包檔案就已經是 pcapng 格式了。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29990276/viewspace-2917394/,如需轉載,請註明出處,否則將追究法律責任。

相關文章