Marcio Cunha

Rede lenta? Como achar loops em switches com tcpdump

Aprenda a identificar tempestades de broadcast causadas por loops físicos em switches usando o tcpdump. O diagnóstico prático para estabilizar sua rede.

Marcio Cunha•3 min
Também disponível em:EnglishEspañol
Resumo
  • Loops de rede criam tempestades de broadcast que consomem toda a largura de banda disponível.
  • O comando tcpdump permite visualizar o tráfego em tempo real para identificar padrões repetitivos.
  • Falhas físicas como cabos em loop ou problemas no Spanning Tree Protocol são causas comuns.
  • Filtros específicos no tcpdump ajudam a isolar o tráfego que causa a saturação das interfaces.
  • A captura precisa de pacotes é a forma mais eficaz de localizar a origem do problema na rede.

O que acontece quando sua rede entra em loop?

Quando dois cabos são conectados incorretamente entre switches, ou um switch é ligado a si mesmo, criamos um loop de camada 2. Na prática, isso faz com que quadros de broadcast—pacotes enviados para todos os dispositivos da rede—fiquem circulando infinitamente. Como cada switch recebe o pacote e o replica em todas as outras portas, a rede rapidamente é inundada por uma tempestade de broadcast, levando ao travamento total dos dispositivos. É um pesadelo silencioso que derruba até sistemas de rede bem estruturados.

Por que o tcpdump é sua melhor ferramenta de diagnóstico

Diferente de ferramentas de gerenciamento que apenas mostram estatísticas, o tcpdump é como um microscópio para o tráfego de dados. Ele permite capturar e analisar cada pacote que passa por uma interface de rede. Se você suspeita de um loop, o tcpdump revelará uma enxurrada de pacotes idênticos com o mesmo endereço MAC de origem e destino, ou uma repetição incessante de pacotes ARP. Se você ainda não está familiarizado com a ferramenta, recomendo nosso guia sobre como capturar pacotes no Linux para se preparar.

Preparando a captura para identificar o culpado

Para diagnosticar a tempestade, você precisa rodar o tcpdump em uma interface conectada ao core da rede ou em uma porta de espelhamento (mirror port). A ideia é observar o volume de pacotes. Se uma interface está processando milhares de pacotes por segundo de broadcast, você encontrou a trilha. Para capturar apenas tráfego de broadcast, usamos filtros que ignoram o tráfego comum de unicast, focando no que realmente inunda a rede.

tcpdump -i eth0 -n -e broadcast

Este comando exibe apenas pacotes de broadcast na interface eth0. Se você vir a tela subir freneticamente, há um problema. Para verificar a frequência, você pode usar ferramentas auxiliares ou direcionar para um arquivo pcap e analisar a latência e perda de pacotes, pois um switch sob estresse de loop parará de responder ao ping.

Identificando o padrão do loop

Ao analisar o fluxo, procure por pacotes de 'Spanning Tree Protocol' (STP) ou solicitações ARP repetidas exaustivamente. Se o switch falhou em aplicar o protocolo que deveria bloquear portas redundantes, você verá esses pacotes circulando de volta. Em cenários de manutenção, é comum que alguém troque um cabo ou altere a configuração de VLANs, criando uma falha lógica que o STP não consegue detectar. O diagnóstico se resume a isolar a porta que mais envia esses pacotes de broadcast.

Como resolver a tempestade de broadcast

  1. Isole fisicamente a área suspeita removendo cabos entre switches um por um.
  2. Monitore a carga da interface com o comando
    tcpdump -i eth0 -c 1000 -e
    para ver se o tráfego cai após remover um link.
  3. Verifique a integridade física dos cabos e conectores, tratando a falha como se estivesse testando um componente eletrônico em curto.

Após localizar o link responsável, o loop cessará imediatamente. Lembre-se que, em casos graves, o switch pode precisar de uma reinicialização física para limpar as tabelas de encaminhamento corrompidas durante a tempestade. Manter uma boa documentação da topologia física é a sua melhor prevenção contra este problema.