# Comando tcpdump do Linux: como analisar pacotes na sua rede

Com o [comando](https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/comandos-do-linux-a-lista-essencial/ "Comandos de Linux: la lista fundamental") tcpdump [do Linux](https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/comandos-do-linux-a-lista-essencial/ "Comandos de Linux: la lista fundamental"), pode analisar os pacotes que são enviados na sua rede. Para otimizar a análise, pode recorrer a uma série de opções e filtros.

## Para que serve o comando tcpdump no Linux?

O tcpdump é uma ferramenta especialmente útil para analisar o tráfego de rede no Linux e, se necessário, resolver possíveis problemas de rede. Este programa de linha de comandos, que vem pré-instalado na maioria das distribuições Linux mais conhecidas (como [o Debian](https://www.ionos.com/pt-pt/digitalguide/servidores/know-how/debian-o-software-universal-para-sistemas-operativos/ "Debian, el software universal para sistemas operativos") ou o Ubuntu), fornece informações sobre os pacotes de dados que foram enviados ou recebidos na sua rede. Apesar do que o nome possa sugerir, o comando tcpdump do Linux permite analisar, além de pacotes TCP, também pacotes UDP e ICMP. No entanto, para utilizar este comando, irá necessitar de permissões de root.

## Como funciona o comando tcpdump?

A função desempenhada pelo tcpdump é conhecida como «sniffing». Ao utilizar o comando tcpdump no Linux, especifica-se a interface de rede que o programa deve monitorizar. Além disso, é possível utilizar vários filtros para adaptar e otimizar o processo. O comando é executado na **linha de comandos** e é aí que serão apresentados os resultados da análise.

## Como é a sintaxe do tcpdump?

A sintaxe do tcpdump no Linux é muito simples e corresponde a:

```bash
$ tcpdump [opciones] [filtros]
```

Embora não seja necessário especificar nenhuma opção, é recomendável fazê-lo para garantir que o tcpdump utilize a interface de rede correta. Os filtros também não são obrigatórios, mas, se nenhum for especificado, o tcpdump analisará todos os pacotes de todos os hosts, o que pode gerar uma grande quantidade de informação, tornando difícil compreender e analisar os dados obtidos.

## Que opções e filtros podem ser utilizados com o tcpdump no Linux?

O tcpdump pode ser utilizado com uma grande variedade de opções e filtros. As opções mais importantes são as seguintes:

- **A**: imprime o conteúdo de um pacote em ASCII.
- **c \[quantidade\]**: o tcpdump pára automaticamente após analisar a quantidade especificada de pacotes.
- **D**: esta opção mostra uma lista de todas as interfaces disponíveis.
- **i \[Interface\]**: esta opção especifica a interface a capturar.
- **s \[quantidade\]**: define quantos bytes por pacote devem ser capturados.

Com o tcpdump, é possível utilizar os seguintes filtros:

- **dst**: apenas são analisados os pacotes cujo destino coincida com o valor definido. Este valor pode ser host, net, port ou portrange.
- **host**: este filtro garante que apenas sejam considerados os pacotes que tenham um endereço IP específico como origem ou destino, ou, em alternativa, um nome de host específico.
- **net**: este filtro considera apenas os pacotes que têm um endereço IP dentro de um intervalo de rede específico como origem ou destino.
- **port**: com este filtro, especifica-se uma porta específica entre 0 e 65535, que será analisada exclusivamente.
- **portrange**: este filtro contém um intervalo de portas entre 0 e 65535 que será analisado exclusivamente.
- **proto**: este filtro considera apenas os pacotes com um protocolo de rede específico. O filtro pode ter os seguintes valores: arp, decnet, ether, fddi, ip, ip6, rarp, tcp, udp ou wlan.
- **src**: apenas são analisados os pacotes cuja origem coincide com um valor definido. Este valor pode ser host, net, port ou portrange.

## Exemplos para o comando tcpdump

Por fim, mostramos-lhe como pode utilizar o tcpdump. No exemplo que se segue, é utilizado um [comando sudo do Linux](https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/linux-sudo/).

```bash
$ sudo tcpdump -D
```

Desta forma, pode verificar quais as interfaces de rede que estão disponíveis.

```bash
$ sudo tcpdump -i wlx14a3c782966b
```

Desta forma, apenas é analisada a interface do nome especificado.

```bash
$ sudo tcpdump -c 5 -i wlx14a3c782966b
```

Desta forma, indicas que o tcpdump inclua apenas cinco pacotes.


This is a markdown version of: [https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/comando-tcpdump-do-linux/](https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/comando-tcpdump-do-linux/) for AI/LLM consumption.