2010-06-07 94 views
1

我有以下文件:test_network.pcap: tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 65535)
我知道在這個文件中是幾個視頻流。 我如何提取它們?如何從pcap文件恢復數據?

[文件是~180 GB]

回答

4
  1. 使用Pcap庫(libpcap,WinPcapPcap.Net
  2. 通過以太網提取TCP over IP。
  3. 重建TCP流(請參閱Reconstructing data from PCAP sniff)。
  4. 將TCP流數據保存到文件。

嘗試一些PCAP TCP重建工具:

http://www.codeproject.com/KB/IP/TcpRecon.aspx

http://code.google.com/p/pcap-reconst/

+0

因此,我使用'tshark'來查看該pcap文件和src/dst地址中有多少個流。 接下來,我使用'tshark'爲特定的src/dst地址捕獲數據包,並將它們寫入另一個pcap文件。 最後,我用'libpcap'編寫程序來提取每個數據包的有效載荷並將其寫入'some.mpg'現在我需要檢查這個'mpg'文件以確保它沒有損壞。但我不知道該怎麼做。 – dscTobi 2010-06-10 14:57:53

+0

如果你只提取有效載荷,這可能是不夠的。您需要根據序列號重建數據。如果你檢查TCP序列號和其他參數,這應該是一個有效的文件(就像你使用TCP下載的那樣)。我不知道如何驗證mpg文件,但我確定有很多軟件可以這樣做。任何MPG玩家都可以讓你知道...... – brickner 2010-06-10 15:32:57

0

您可以查看以下鏈接understad PCAP規格:PCAP especification

這個網站可能對您有用:tcpdump.org

你也可以使用C++庫:libpcap++

+0

您列出的「PCAP especification」文件實際上是pcap-ng文件的規範;有問題的文件是pcap,而不是pcap-ng。 libpcap可以讀取pcap文件; libpcap 1.1.0和更高版本也可以讀取一些pcap-ng文件。使用libpcap的程序可以和libpcap 1.1.0及更高版本一起讀取pcap和pcap-ng文件,而無需更改爲支持pcap-ng;使用libpcap意味着你不需要知道pcap或pcap-ng文件的結構。 – 2012-12-30 20:08:20

2

有發展,以實現自己的目標的工具,其中一些是開放源代碼的,例如: