Como acompanhar os fluxos tcp continuamente ao longo da captura com tshark / wireshark?

1

Eu exibo o fluxo TCP de uma captura já finalizada escrita em out.pcap com

END=$(tshark -r out.pcap -T fields -e tcp.stream | sort -n | tail -1); 
for ((i=0;i<=END;i++));
do 
echo $i; tshark -r out.pcap -qz follow,tcp,ascii,$i 
done 

Como posso exibir fluxos TCP recém-terminados dessa maneira ao longo da captura de pacotes?

    
por user207114 25.12.2016 / 09:13

1 resposta

1

Uma sugestão para usar tcpflow .

Se tshark realmente deveria ser usado, uma solução feia seria

REFF=/tmp/.streams
echo "" > $REFF
while true 
do
tshark -r $@ -T fields -e tcp.stream 2> /dev/null | sort -nu | sed '/^$/d' | while read i
do
    if [ -z "$(cat $REFF | grep "^$i$" )" ]
    then
          tshark -r $@ -qz follow,tcp,ascii,$i  | tee ${@}-stream-$i.txt
          echo $i >> $REFF
    fi
done
done
    
por 27.12.2016 / 14:32