Um cabo ligado errado pode derrubar toda a sua rede (e te deixar maluco)

Era para eu ter escrito sobre isso desde que escrevi meu texto sobre uma das vulnerabilidades do Wi-Fi. E como estou baixando o sarrafo no Wi-Fi esta semana acho justo lembrar que cuidar de redes cabeadas, principalmente grandes, não é nenhum “melzinho na chupeta”.

O fenômeno é chamado de “tempestade de pacotes” ou “tempestade de broadcast” (broadcast storm) e ocorre quando acidentalmente (ou propositalmente) as duas pontas de um mesmo cabo de rede  são ligadas ao mesmo segmento de rede. Geralmente, no mesmo switch.

Imagine que você está no rack tentando diagnosticar um problema menor na rede e desconecta um ou mais cabos do switch e depois de religá-los um novo problema surge, ainda pior. De toda parte da empresa começam a chegar recados de que tudo (internet, email, sistema comercial, câmeras IP, etc) parou e ninguém consegue usar a rede. O seu primeiro impulso é achar que você desconectou algo mas tudo parece estar como deveria. Você procura por uma luz apagada mas todas estão acesas. Acesas até demais!

Isso porque ao reconectar os cabos você não percebeu que conectou um a mais, a ponta solta de um cabo cuja outra ponta já estava conectada ao switch. Isso cria um “loop” no equipamento e o efeito é quase imediato. Quando o switch recebe o primeiro pacote de dados para broadcast vindo de qualquer um dos dispositivos ligados a ele, encaminha para todas as outras portas, como de costume; mas como existe um loop esse encaminhamento volta por outra porta como se fosse um pacote de broadcast novo e é novamente retransmitido para todas as portas, que volta pelo loop e assim continua até esgotar toda a capacidade de processamento do switch.

Pior que isso: a tempestade se propaga para todos os switches no mesmo segmento de rede (o mesmo “domínio de broadcast”) paralisando todos eles em segundos.

Às vezes você pode notar que se trata disso pelo padrão frenético de piscadas de todos os LEDs do switch, mas nem sempre.

Acha improvável isso acontecer? Pois aconteceu comigo e até hoje eu não sei como, em um rack onde supostamente somente eu mexo, a outra ponta do cabo podia estar numa posição tal que me permitiu fazer a confusão. Já quando você está lidando com switches que são ligados de qualquer maneira em cima da mesa ou até pelo chão criar um loop acidental é muuuuito mais fácil de acontecer. Por sorte, só fiz isso uma vez também, até porque nesse caso eu geralmente tomo o cuidado de olhar para onde o cabo vai antes de plugá-lo no switch (algo muito difícil de checar em um rack). No total eu já “levei um banho” em duas tempestades criadas por mim.

Quando você reconhece os sintomas e percebe que foi você que provocou é fácil resolver. Basta respirar fundo e refazer as conexões no switch onde você está/estava mexendo. Problema mesmo é quando isso foi feito acidentalmente ou propositalmente em outro lugar da rede e você não faz idéia de onde. Se proposital é pior ainda porque pode ter sido feito em mais de um lugar e se você não estiver preparado para isso vai levar um loooongo tempo quebrando a cabeça, porque você solta um cabo que vai a um local sabotado e o problema não desaparece porque existe outro local sabotado, aí você recoloca o cabo e repete o procedimento com os outros cabos mas usando esse método de teste não vai achar nunca. E torça para o sabotador não ter a capacidade de se mover pela rede sem ser notado e não ser uma conspiração, tirando e colocando loops.

Switches gerenciáveis supostamente ajudam nessa tarefa, mas nenhum de meus clientes usa por isso não tenho experiência com eles.

Em teoria, até switches não gerenciáveis poderiam ter pelo menos uma sinalização do tipo “está havendo uma tempestade aqui”. Por exemplo, este switch vagabundérrimo da Encore é baseado no chip Realtek RTL9308SB cujo datasheet informa que existe uma função opcional de detecção de loop com um LED para indicar sua existência. Mas isso não é implementado pelo fabricante do switch. E esse desinteresse em implementar uma função disponível também ocorre nos switches grandes, mais caros. Este switch de rack é baseado no chip Realtek RTL8324, cujo datasheet informa que existe uma função para isso (não menciona ser opcional) que pode acender um LED ou informar um dispositivo de controle. Também não foi implementado pelo fabricante.

Ao responsável pela rede resta torcer para que nunca aconteça e estar preparado com uma estratégia para quando acontecer.

 

11 comentários
  • Walter - 140 Comentários

    Se as duas pontas dos cabos estiverem bem identificadas não ajuda a detectar o problema mais rapidamente? Cores diferentes para cada ponta, por exemplo.

    • Jefferson - 6.302 Comentários

      Sim, poderia evitar os acidentes. Mas não existe uma identificação desse tipo no padrão ethernet (esse é o maior empecilho para que dê certo)e você pode fazer isso no rack que você montou mas não pode esperar isso nos outros. E requer disciplina de todo mundo que mexe na rede.

      De qualquer forma, não é uma má idéia.

      • Luciano - 444 Comentários

        Cores não, mas anilhas podem ser de grande ajuda neste caso! Ou algo que eu faço aqui e já vi em muitas redes de alto padrão. Um papelzinho impresso com o numero do ponto e com espaguete termo-retrátil transparente por cima.

        No caso de um switch grande, ainda vi que colocam etiquetas nas portas, pra identificar cada cabo onde vai, uma mera formalidade, mas que pode facilitar nessa hora, basta olhar se a etiqueta do cabo corresponde a que está na porta, se não estiver, significa que alguém mexeu ali.

        • Walter - 140 Comentários

          As redes com as quais eu já trabalhei nunca foram muito grandes, mas eu sempre fiz isso, colocar uma etiqueta em cada ponta. E também faço isso no cabeamento de som do meu HT. E olha que eu nem sou técnico.

  • Jefferson - 6.302 Comentários

    Outro cenário que vale a pena ter em mente: na minha rede, cinco segundos depois de criar um loop em um switch eu já não tenho mais imagem de nenhuma das minhas câmeras IP. Para alguém que já está dentro da propriedade desejando fazer um malfeito, colocar um loop em um switch é muito mais eficiente do que danificar o mesmo switch.

    É um ponto contra os NVRs e a favor dos DVRs. Claro, dificultar ao máximo o acesso a todos os switches minimiza (mas não elimina) o problema.

  • Jefferson - 6.302 Comentários

    Eu acabei esquecendo do motivo que me fez lembrar de escrever este post. Roteadores Wi-Fi levam uma vantagem sobre APs nesse caso porque as tempestades são naturalmente limitadas aos respectivos domínios de broadcast e WAN e LAN estão em domínios diferentes (broadcasts não são propagados pela porta WAN). Dividir a rede em segmentos assim ajuda a minimizar os efeitos dessa ocorrência porque o loop colocado no switch de um roteador só paralisa todos os dispositivos ligados a ele.

  • Jefferson - 6.302 Comentários

    Como eu disse no post, não tenho experiência com switches gerenciáveis, mas isso é o que conheço da teoria:

    Praticamente todos os os switches gerenciáveis hoje suportam um protocolo chamado Spanning Tree Protocol (STP) que permite que switches sejam instalados de forma a permitir redundância (isto é, se um switch falha, automaticamente o tráfego vai por outro), o que não pode ser feito com switches comuns porque causa loops. E uma função natural do STP é justamente a detecção de loops. Assim que uma porta no switch é ativada (quado você pluga algo nela), antes dela ser conectada às outras é verificada a existência de loops e se isso for detectado a porta permanece desabilitada

    Mas STP só detecta um loop no mesmo switch. Existe um outro problema que é você ligar um switch burro a um gerenciável e criar um loop no burro. A tempestade não vai ser detectada como um loop pelo switch gerenciável porque vai afetar apenas uma porta deste mas vai inundar a rede assim mesmo. Como mesmo em uma rede 100% composta de switches gerenciáveis um usuário qualquer pode trazer um switch burro e criar um loop (acidentalmente ou não) é requerida outra proteção chamada “BPDU guard” que não estou certo que todo switch gerenciável suporte. Essa proteção consegue distinguir uma tempestade enviando pacotes especiais em todas as portas e se o pacote voltar pela mesma porta por onde foi enviado é porque há um loop mais à frente e esta porta é desabilitada.

    STP faz com que o switch demore um pouco a ativar cada porta, por isso muitos administradores de rede, sem saber para que serve, deasabilitam a função e ficam vulneráveis a loops mesmo usando switches gerenciáveis.

    • Jefferson - 6.302 Comentários

      Essa proteção consegue distinguir uma tempestade enviando pacotes especiais em todas as portas e se o pacote voltar pela mesma porta por onde foi enviado é porque há um loop mais à frente e esta porta é desabilitada.

      Isso não está inteiramente correto. Frames BPDU são usados na operação normal do STP para comunicação entre switches e todas as portas que sabidamente não foram conectadas a outros switches gerenciáveis (“EDGE ports”) não tem porque receber esses frames e se receberem é ou porque alguém ligou um switch gerenciável nela ou provocou um loop. Mas para a proteção funcionar é preciso definir a porta como “Edge Port” e declarar que você quer a proteção porque em algumas configurações uma “Edge port” se autoconfigura automaticamente como “non-Edge” ao detectar um frame BPDU.

  • Jefferson - 6.302 Comentários

    Imagine um provedor de acesso desses de bairro que passam cabos ethernet até a casa de cada cliente usando switches burros por todo o caminho.

  • Rodrigo Alvisse Soares - 1 Comentário

    sou admin de uma rede com 14 switch, os pavilhões externos são interligados por fibra óptica em topologia anel chegando pelos dois lados aqui na sala técnica onde tem o rack principal, teve um problema desse onde o usuário conectou os cabos do telefone ip saindo do ponto ligando no telefone e saindo do telefone ligando em outro ponto, agora imagina ates descobrir em uma rede desse tamanho de onde vinha esse loop. melhor nem imaginar a correria, derrubou toda rede.

  • pedro julio da silva - 1 Comentário

    eu administro uma rede de milhares de switchs em uma cidade, e isso acontece toda semana. tem que tomar cuidado, na maioria das vezes vem dos tecnicos mal orientados que ligam tudo que tem na caixa no switch sem saber, mas em grande parte das vezes vem da casa dos clientes também. (a empresa que trabalho é grande mas não tem muita organização) rsrs

Deixe um comentário

Você pode usar estas tags HTML

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

  

  

  

:) :( ;) O_o B) :lol: :huh: :S :D :-P 8-O :yahoo: :rtfm: :dashhead1: :clapping: more »