Farejando pacotes em tempo real

0

Estou usando o tcpdump e é bom, mas exibe problemas aqui . Outros programas como hexinject, tcpflow e tracedump usam pcap para atrasar um pouco antes de exibir os pacotes.

Eu também usei raw-sockets que não fica lento, mas não consigo obter números de porta com soquetes crus.

Eu olhei os documentos para o tcpdump, e parece haver --immediate-mode . Estou tentando fazer com que o tcpdump pare de atrasar o envio de seus pacotes.

Minhas versões atuais são:

  • tcpdump versão 4.6.2

  • libpcap versão 1.6.2

Existe um patch para o tcpdump como este ou outro cli que não atrase?

    
por David Chen 13.09.2015 / 06:00

1 resposta

2

Is there a patch for tcpdump like this

Sim, há este , que, como esse patch, adiciona um sinalizar para ativar o modo imediato ...

... exceto que não é específico de BPF (portanto, não está restrito a * BSD, OS X e Solaris 11) e usa --immediate-mode em vez de -b e já está no tcpdump padrão 4.7. x libera, então se você tiver o tcpdump 4.7.x ou mais tarde, você não terá para aplicar o patch.

Que tipo de patch você está procurando? Uma que não requer uma versão recente da libpcap com uma API para ativar o modo imediato? Em caso afirmativo, ou esse patch não funcionará em alguns sistemas operacionais ou terá que fazer coisas dependentes do sistema operacional (e, infelizmente, não há algum ioctl simples que você possa fazer no Linux, portanto, talvez não seja uma maneira dependente do sistema operacional de desativar o buffer para seu sistema operacional).

Por outro lado, você pode tentar reduzir o tempo limite para, digamos, 1/10 de segundo (use 100 em vez de 1000 em pcap_open_live() ou pcap_set_timeout() ) ou mesmo 1/100 de segundo (use 10 em vez de 1000 em pcap_open_live() ou pcap_set_timeout() ).

    
por 13.09.2015 / 09:06

Tags