Tutorial Linux - comando tcpdump

O comando tcpdump é usando para capturar pacotes de rede para análise de tráfego.



Capturar todos os pacotes de um interface especifica:

Para mostrar todos os pacotes que passam por um interface de rede, use o parâmetro "-i" seguido do nome da interface que deseja analisar.

tcpdump -i eth0

Limitar a quantidade de pacotes para capturar:

Para capturar apenas uma determinada quantidade de pacotes de uma interface, use o parâmetro "-c" seguido da quantidade de pacotes para serem capturados.

tcpdump -c 10 -i eth0

Capturar pacotes e mostrar a saída exibindo caracteres em ASCII:

Para exibir os pacotes no formato ASCII use o parâmetro "-A".

tcpdump -A -i eth0

Capturar pacotes e mostrar a saída exibindo caracteres em ASCII e Hexadecimal:

Para exibir as informações do cabeçalho no formato Hexadecimal, use o parâmetro "-XX".

tcpdump -XX -i eth0

Capturar pacotes e salvar a saída da captura em um arquivo:

O tcpdump permite salvar os pacotes capturados em um arquivo. Para tal use o parâmetro "-w".

tcpdump -w arquivo_saida -i eth0

Capturar pacotes e mostrar a saída sem resolver nomes DNS:

O parâmetro "-n" pode ser usado para não resolver nomes DNS, agilizando a saída.

tcpdump -n -i eth0

Capturar pacotes e mostrar somente um protocolo especifico:

Para filtrar os pacotes por protocolo, use o nome do protocolo como um parâmetro, como no caso abaixo o "tcp". Outras opções são o udp e icmp.

tcpdump -i eth0 tcp

Capturar pacotes e mostrar somente de uma porta especifica:

Para filtrar os pacotes por porta use o parâmetro "port" seguido do numero da porta do protocolo.

tcpdump -i eth0 port 80

Capturar pacotes e mostrar somente pacotes de um ip e porta específicos:

É possível combinar vários filtros no tcpdump, como ip de origem, destino, porta, e interface, conforme abaixo.

tcpdump -i eth0 src 10.71.100.2 and port 22

Capturar pacotes e mostrar somente pacotes que não sejam de um protocolo especifico:

O parâmetro "not" serve para filtrar as exceções. No caso abaixo serão mostrados todos os protocolos menos o tcp.

tcpdump -i eth0 not tcp