Perché tcpdump non riconosce l'input in pipe?

4
  1. Ho ottenuto un file di acquisizione dei pacchetti:

    $ sudo tcpdump -w file.pcap
    
  2. Posso quindi analizzare quel file:

    $ tcpdump -r file.pcap
    

    Posso persino usare il reindirizzamento dei file per leggere dallo standard input:

    $ tcpdump -r - < file.pcap
    
  3. Tuttavia, non posso usare una pipe per leggere dallo standard input:

    $ cat file.pcap | tcpdump -r -
    tcpdump: unknown file format
    

    Questo dovrebbe funzionare. Cosa sta succedendo?

OS X Yosemite 10.10
tcpdump versione 4.3.0 - Apple versione 59
libpcap versione 1.5.3 - Apple versione 47

In realtà sto provando a sudo tcpdump -w - | tee file.pcap | tcpdump -r - , che dà origine allo stesso problema, ma sembra che si presenti con qualsiasi forma di input in pipe.

    
posta eggyal 24.10.2014 - 11:22
fonte

1 risposta

1

Ho lo stesso problema su Mavericks (10.9.5). Probabilmente non è la migliore risposta, ma ho scaricato la versione open source di tcpdump (tcpdump-4.6.2) e l'ho inserita nel mio percorso prima della versione del sistema e funziona con le pipe. Ovviamente, si perde la funzionalità extra specifica di Apple.

    
risposta data 11.02.2015 - 19:54
fonte

Leggi altre domande sui tag