Comment puis-je avoir tcpdump écrire dans le fichier et la sortie standard des données appropriées?

Je veux que tcpdump écrive des données de paquets brutes dans un fichier et affiche l'analyse des paquets en sortie standard lorsque les paquets sont capturés (par analyse, je veux dire les lignes qu'il affiche normalement lorsque -w est manquant). Quelqu'un peut-il me dire comment faire cela?

40
demandé sur user2565010 2014-09-01 14:33:20

2 réponses

Voici une bonne façon de faire ce que vous voulez:

tcpdump -w - | tee somefile | tcpdump -r -

Ce qu'il fait:

  • -w - indique à tcpdump d'écrire des données binaires dans stdout
  • tee écrit ces données binaires dans un fichier et dans son propre stdout
  • -r - indique au second tcpdump d'obtenir ses données à partir de son stdin
78
répondu cnicutar 2014-09-01 10:53:25
tcpdump ${ARGS} &
PID=$!
tcpdump ${ARGS} -w ${filename}
kill $PID
-1
répondu Trevor Boyd Smith 2017-02-24 19:24:30