2009-05-26 21 views
15

Come concatenare due file tcpdump, in modo che un file venga visualizzato dopo l'altro nel file? Per essere concreto, voglio "moltiplicare" un file tcpdump, in modo che tutte le sessioni vengano ripetute una dopo l'altra alcune volte.Come concatenare due file tcpdump (file pcap)

risposta

2

Wireshark ha il comando File -> Unisci che dovrebbe fare ciò.

Ricordo anche che il mergecap è uno strumento per farlo, ma non l'ho usato da un po '.

6

Come le altre risposte dicono, è possibile utilizzare File-> Unisci in Wireshark, tcpslice o mergecap. Puoi anche trascinare un file nella finestra principale di Wireshark. Se Wireshark/tcpdump/snort/Ntop/etc supporta pcap-ng, potresti semplicemente concatenare i tuoi file di acquisizione.

+0

Ma non tutti appena fondono dati a pacchetto, senza preoccuparsi di sequenza di numeri e spostamento dei pacchetti in tempo, in modo che un segmento concatenazione è posto dopo l'altro nel tempo. –

+1

Se si utilizza File-> Unisci o mergecap, si ha la possibilità di anteporre, fondere cronologicamente (interleaving in base a data/ora), o accodare. –

1

Usa mergecap da Wireshark:

mergecap ... w output.cap

-3

Prova pcapjoiner (commerciale, con demo limitata a 1000 pacchetti).

+2

Perché utilizzare uno strumento commerciale, closed-source, limitato in caso di mergecap? –

23

mergecap può risolvere il problema, ma è necessario utilizzarlo con l'opzione '-a', altrimenti riordina i pacchetti temporaneamente. Poi: mergecap -a file_1.pcap file_1.pcap file_1.cap -w output_file.pcap

+1

Si noti che la mergecap fa parte del pacchetto "wireshark-common" nelle distribuzioni basate su Debian –

1

di unirsi pcap multipla, utilizzare questo script batch

tutti i file pcap devono essere nella stessa cartella che lotto lo script si trova e anche il primo file pcap deve essere chiamato 01.pcap e il secondo deve essere 02.pcap quando si dirige la directory, non ci sono altre limitazioni.

@echo off 
@setlocal enableextensions enabledelayedexpansion 

set /a var1=1 
set mergecapL="C:\Program Files\Wireshark" 

dir /b *.pcap > list.txt 
%mergecapL%\mergecap.exe -w %cd%\out%var1%.pcap %cd%\01.pcap %cd%\02.pcap 
FOR /F "skip=2 delims=" %%A IN (list.txt) DO (
    set var2=!var1! 
    set /a var1+=1 
    %mergecapL%\mergecap.exe -w %cd%\out!var1!.pcap %cd%\out!var2!.pcap "%cd%\%%A" 
    del out!var2!.pcap 
) 
del list.txt