Resumo Spanning-Tree

O Objetivo do STP é eliminar loops na rede com a negociação de caminhos livres através do Switch Root (Raiz). Dessa forma é garantido que haverá apenas um caminho para qualquer destino mas com o bloqueio dos caminhos redundantes. Se houver falha no enlace principal, o caminho em estado de bloqueio torna-se o principal.
Nesse vídeos fazemos um resumo do Spanning-Tree e suas configurações.

Até logo!

Vídeo: Protegendo o Spanning-Tree (STP)

Os ataques ao protocolo STP geralmente têm como objetivo assumir a identidade do switch root da rede, ocasionando assim cenários de indisponibilidade na rede. Programas como o Yersinia permitem gerar esse tipo de ataque. Há também cenários em que usuários adicionam switches não gerenciados e hubs (propositadamente ou não) com o intuito de fornecer mais pontos de rede em ambientes que deveriam ser controlados.

Funcionalidades comentadas no video para mitigar os ataques ao STP, são: Root Protection (Root Guard), BPDU Protection (BPDU guard) com STP edged-port (portfast) e loop protection (loop guard).

Até logo!

Vídeo: STP edged-port + BPDU-protection

A feature edged-port permite a interface saltar os estados Listening e Learning do Spanning-Tree Protocol (STP), colocando as portas imediatamente em estado Forwarding (Encaminhamento). A configuração do stp edged-port enableforça a interface a ignorar os estados de convergência do STP, incluíndo as mensagens de notificação de mudança na topologia (mensagens TCN ).

A utilização da feature edged-port com a configuração do comando stp bpdu-protection, protege as portas configuradas como edged-port de receberem BPDUs. Ao receber um BPDU a porta entrará em shutdown.

Valeuu!

Falando um pouco mais sobre custo STP

Uma vez que o Switch root da rede é definido, os Switches não-Root definirão a partir do Switch Root o melhor caminho para ele e bloquearão os caminhos redundantes, afim de evitar loop na rede.

O custo atribuído à velocidade da porta é um fator determinante na escolha do melhor caminho.

STP Cost Comware

No exemplo acima, o Switch SW2 bloqueou o caminho com maior custo para o Switch Root.

Nos casos em que é necessário saber qual o custo de cada porta (em Switches baseados no Comware) verifique com o comando display stp interface [nome-da-interface número-da-interface] :

[Switch]display stp interface GigabitEthernet 1/0/1
 ----[CIST][Port2(GigabitEthernet1/0/1)][FORWARDING]----
 Port protocol       : Enabled
 Port role           : Designated Port (Boundary)
 Port ID             : 128.2
 Port cost(Legacy)   : Config=auto, Active=20
 Desg.bridge/port    : 32768.0837-6c44-0100, 128.2
<saída omitida>

Para manipulação manual dos custos das portas STP  acesse o post: http://www.comutadores.com.br/spanning-tree-manipulando-o-custo-do-caminho-para-o-root-path-cost/

Um comando bem interessante para validar qual o custo utilizado de um Switch não-Root para o Switch root é o display stp root:

[SW2]display stp root
 MST ID   Root Bridge ID        ExtPathCost IntPathCost Root Port
 0        0.0837-6c44-0100      23          0           GE1/0/2


[SW3]display stp root
 MST ID   Root Bridge ID        ExtPathCost IntPathCost Root Port
 0        0.0837-6c44-0100      43          0           GE1/0/1

Dúvidas? deixe um comentário.
Até breve.

Perguntas e Respostas: Portas Access/Trunk/Híbrida, LACP e STP.

Galera, essa semana recebi um email com algumas dúvidas sobre portas Trunk/Hybrid, Link Aggregation e STP. Achei que seria bacana responder na forma de post pois acredito que essas questões podem ser as dúvidas de mais pessoas.

Segue abaixo as questões editadas… sintam-se livres para interagir nos comentários.

Diego,
Se não for muito incomodo pra vc, consegue me responder as questões abaixo?

  1. Diferença do link aggregation em modo static e dynamic, quando usar um ou outro?

O Link-Aggregation permite  agregação de diversas interfaces Ethernet (portas físicas) para a criação de uma única porta lógica com o intuito de prover redundância e aumento de banda. As melhores práticas sugerem a negociação do protocolo LACP (802.3ad) entre os 2 equipamentos que desejam fechar a agregação de portas afim de evitar erros de cabeamento e certificar o meio físico em todo o tempo que o Link-Aggregation estiver ativo, além de agilizar a redundância em caso de falhas.

Exemplo de configuração com LACP: http://www.comutadores.com.br/switches-3com-4800g-link-aggregation/

Mas há também cenários em que um dos equipamentos não utiliza o protocolo LACP  para agregação de links ou então o meio físico oferecido pelo Provedor de Serviços para comunicação Ethernet não permite o encaminhamento de alguns protocolos da camada de enlace como o LLDP, CDP, LACP, STP, etc. Então nesses cenários devemos usar o modo static, isto é, Link-aggregation configurado manualmente sem validação do meio e/ou equipamentos por um protocolo como 802.3ad. Se a porta estiver UP, o modo static irá encaminhar o tráfego, mesmo que o cabeamento esteja conectado em outro equipamento incorretamente.

  1. Diferença de portas trunk e hybrid, quando usar a hybrid?

Enquanto a porta configurada como access permite apenas o tráfego de quadros Ethernet sem marcação de tag 802.1Q, o que faz com que o Switch atribua a comunicação para aquela VLAN, a configuração Trunk e Hybrid permitem a utilização de várias VLANs em uma única porta. As portas configuradas como access são geralmente atribuídas para computadores, servidores, impressoras, etc.

A porta Trunk é utilizada para o encaminhamento e recebimento de tráfego Ethernet tagueado com o ID da VLAN mas com a exceção de permitir apenas uma VLAN não tagueada, dita explicitamente na configuração. Por padrão o tráfego não tagueado de uma porta trunk é direcionado para a VLAN 1 (mas isso pode ser modificado). As portas trunk são configuradas na comunicação entre Switches e também com Servidores que possuem Switches virtuais internos para VMs, etc.

Exemplos:

http://www.comutadores.com.br/video-vlans-configuracao-de-porta-access-hybrid-e-trunk-para-switches-hpn-3com-e-h3c/

http://www.comutadores.com.br/vlan-trunk-utilizando-802-1q-dot1q/

Já a porta Hybrida permite encaminhar o tráfego de inúmeras VLAN tagueadas ou não. Por exemplo, se você precisa que o tráfego de duas máquinas que estão atrás de um HUB seja separado dinamicamente entre duas  VLANs diferentes, a configuração de porta hybrida permite que o Switch leia marcações como endereço MAC, 802.1p, cabeçalho IP e etc, para dinamicamente efetuar diferenciação do tráfego para as suas respectivas VLANs (lembrando que o tráfego nesse caso pode vir sem TAG das máquinas).

Exemplo de configuração de porta Híbrida:

http://www.comutadores.com.br/mac-based-vlans/

http://www.comutadores.com.br/switches-3com-4800g-atribuindo-uma-vlan-dinamicamente-a-uma-porta-baseado-no-ip-de-origem-ip-subnet-based-vlan/

  1. O spanning tree é habilitado nas portas (uma a uma) ou no switch?

Para habilitar (ou desabiltar) o spanning-tree no Switch é preciso a configuração no modo global.

Exemplo para habilitar o STP:

http://www.comutadores.com.br/stp-desabilitado/

Apesar de ser o protocolo mais utilizado para prevenção de loop, o Spanning-Tree não se encaixa em todos os cenários de rede e o seu algoritmo  pode as vezes prejudicar a integração de diferentes ambiente. Nesse caso é possível adicionar algumas features individualmente nas portas para ajuste fino, como por exemplo o stp-edged port (portfast) ou então desabilitar o STP somente em determinadas portas. Mas cada caso deve ser estudado minuciosamente para evitar situações de loop.

Exemplos de tuning para o STP:

http://www.comutadores.com.br/protegendo-o-spanning-tree/

http://www.comutadores.com.br/switches-hpn7500-configurando-filtros-para-bpdus-bpdu-filtering/

http://www.comutadores.com.br/switches-3com-4800g-edged-port-bpdu-protection/

  1. Diferença do spanning tree para o rapid spanning tree, quando usar o rapid spanning tree?

O Rapid Spanning-Tree (802.1w) é uma evolução do Spanning-Tree inicial (802.1d) com um significativa melhora no tempo de convergência e conectividade da rede.

Uma das grandes limitações do STP não foi corrigida na versão 802.1w que é o bloqueio de todos os caminhos redundantes como prevenção de Loop. Esse tipo de cenário acaba gerando ocasionando gargalos pois a empresa gasta uma quantidade significativa de dinheiro para a extensão de fibra redundante deixando um dos links sobrecarregados enquanto o outro está ocioso.

A versão Multiple Spanning-Tree (802.1s) permite a criação de instancias independentes do STP para balanceamento de VLAN permitindo a alteração do root para determinadas VLANs ou o custo para o root. O protocolo é um pouco complexo quando você deseja conectar grandes domínios 802.1s entre si, por exemplo estender a LAN de duas empresas, mas com um bom planejamento o protocolo torna-se uma ferramenta poderosa.

Todos os Switches HP baseados no comware, ao habilitar o STP, iniciam a versão 802.1s. Caso você não faça nenhuma configuração de ajuste o 802.1s terá o comportamento da versão Rapid-Spanning Tree.

Artigos sobre STP

http://www.comutadores.com.br/rapid-spanning-tree-802-1w/

http://www.comutadores.com.br/elegendo-o-switch-root-do-spanning-tree/

http://www.comutadores.com.br/introducao-ao-multiple-spanning-tree-802-1s/

  1. Para habilitar o spanning tree, basta dar um enable stp na porta de uplink ou é necessario configurar algo a mais (ou quando habilitamos para a switch, já é aplicado para todas as interfaces)?

Ao habilitar o STP no Switch a configuração é atribuída a todas as portas e as mesmas iniciam o encaminhamento de BPDUs para prevenção de loop.

  1. Devo usar os mesmo comandos do stp (ex: “stp edged-port enable”, “stp cost”, ) quando utilizado o rstp?

Sim, o comando é o mesmo para as versões 802.1w e 802.1s

  1. Nas interfaces de uplink, entre switchs que nao sao cores, as portas stp devem ficar como DESIGNATED, PORT ROOT ou ALTERNATE PORT?

Tudo vai depender de quem será o Switch Root da sua rede. Se o Switch Core for o root, os uplinks do Switch Core estarão como DESIGNATED, já os Switches não-Core, conectados a ele, terão suas portas como ROOT PORT (melhor caminho para o Switch ROOT) ou ALTERNATE PORT (porta redundante bloqueada para prevenção de Loop)

  1. Em qual interface, dos switchs roots, devo usar o comando stp root-protection?

A configuração da porta como Root Guard permite à uma porta Designada a prevenção de recebimento de BPDU’s superiores, que indicariam outro Switch com melhor prioridade para tornar-se Root. A feature força a porta a cessar comunicação toda vez quem um Switch tiver o Priority ID mais favoravel para tornar-se Root, então o Switch Root isola assim o segmento para o Switch indesejado. Após encerrar o recebimento desses BPDU’s a interface voltará à comunicação normalmente

Essa feature é geralmente configurada em portas Designadas do Switch Root.

  1. Devo setar o comando “stp loop-protection” nas interfaces “ALTERNATE PORT” (caminho secundário) das switchs não core. Correto?

Correto, a configuração da porta como Loop Guard possibilita aos Switches não-Root, com caminhos redundantes ao Switch Raiz, a função de se  proteger contra cenários de loop na rede quando há falhas no recebimento de BPDU’s em portas ALTERNATE.

Quando uma porta ALTERNATE parar de receber BPDU’s ela identificará o caminho como livre de Loop e entrará em modo de encaminhamento ( imaginando que a porta Root  continue recebendo BPDU’s) criando assim um Loop lógico em toda a LAN. Nesse caso a feature deixará a porta alternativa sem comunicação até voltar a receber BPDU’s do Switch Root.

Obs: Dica! Simule as features em ambiente de laboratório antes de aplicar em uma rede de produção. Isso permitirá ao administrador conhecer melhor os cenários, equipamentos, falhas e troubleshooting.

Até logo.

STP desabilitado!!!!

Alguns Switches HPN serie-A, como por exemplo da série 7500, dependendo da versão do Comware, vem de fábrica com o protocolo STP desabilitado, assim como a maioria dos Protocolos e Serviços do equipamento. Nesse caso, sempre verifique o status do Spanning-Tree antes de colocar o equipamento em uma rede de produção e se necessário, habilite. 😉

[Switch] display stp
Protocol Status :disabled
Protocol Std. :IEEE 802.1s
Version :3
Bridge-Prio. :32768
MAC address :000f-e203-0200
Max age(s) :20
Forward delay(s) :15
Hello time(s) :2
Max hops :20
! Identificando que o STP está desabilitado no Switch

[Switch]stp enable
%Jun 18 16:21:10:253 2012 Switch MSTP/6/MSTP_ENABLE: STP is now
enabled on the device.
! Habilitando o Spanning-Tree

Um grande abraço

Spanning-tree – Manipulando o Custo do Caminho para o Root (Path Cost)

Para criar uma rede livre de Loops, o Protocolo Spanning-tree (802.1d) utiliza 4 processos:

1º Processo
Eleição do menor Bridge ID para escolher o Switch Root

2º Processo
Eleição do menor caminho para o Root

3º Processo
eleição do menor Bridge ID do Switch que está encaminhando o BPDU do Root

4º Processo
Eleição do menor Port ID

Todo Switch da LAN (exceto os “Switches-Hub”) , recebe informações sobre os outros Switches da rede através da troca de mensagens chamadas de BPDUs (Bridge Protocol Data Units) que são encaminhados a cada 2 segundos em todas as portas para garantir a estabilidade da rede.

Entretanto, se a porta recebe um BPDU mais interessante (1º processo) de outro Switch, ele parará de gerar mensagens BPDUs e apenas encaminhará as mensagens desse dispositivo.

Baseado nas informações do Bridge ID dentro dos BPDUs os switches são capazes de:

– Eleger um Switch único, entre todos da LANs, para ser o Root Bridge (Raiz).

A partir do Switch Root os outros Switches da Rede escolherão o melhor caminho(baseado no custo do ponto de vista do Switch não-Root) para o Switch Root e bloquearão os caminhos redundantes para evitar loops na rede.
No exemplo acima (utilizando o custo das portas estabelecido no primeiro padrão do STP) a porta Fa0/1 (custo 19) do Switch não-Root ficará no estado de Bloqueio pois possui o MAIOR custo para chegar ao Root em comparação com a porta G0/1 (custo 4).

Existem cenários que é necessário manipular o path cost (custo do caminho) para escolha do melhor caminho para o Root visto que o meios físicos escolhido para transmissão dos quadros é mais suscetível a interferências, etc.

No exemplo abaixo a Empresa X possui 2 Switches com todas as portas GigabitEthernet para interligação entre 2 prédios distantes. Para conexão entre esses 2 dispositivos,foi utilizado fibra óptica e devido ao alto custo para passagem de nova infra-estrutura para redundância foi decidido a utilização de antenas (wireless) para contingência.

Se apenas tivéssemos manipulado o valor do Bridge ID do Switch Root, a eleição da porta Bloqueada basearia-se no 4º processo ( eleição do menor port ID, no sentido Root –> não-Root), pois o custo para o Root sofreria empate no 2º processo.

Para resolução desse cenário, poderia utilizar as seguintes tarefas:

1º Inverter as portas do Switch Root (G0/1 para Fibra e G0/2 para conexão sem fio); ou…

2º Aumerntar o Custo da porta G0/1 do Switch não-Root para alterarmos os estados das portas.

Configuração

Para a configuração da maioria dos Switches 3Com (no exemplo acima ), digite o comando dentro da Interface G1/0/1 do Switch não-Root:

interface Gi1/0/1
stp cost 19

Nesse caso a conexão com fibra ficaria ativa pelo MENOR custo  e o link wireless (redundante)  em estado de bloqueio!

Bom, é isso….

Até mais!

 

Utilizar o Spanning-Tree, sim ou não?

Publicado originalmente em 16 DE MAIO DE 2010

Olá amigos, a idéia desse post partiu de uma discussão com um colega sobre a razão dele não utilizar e não confiar no Protocolo Spanning-Tree ao ponto de desabilitá-lo em todos os Switches da rede.

O administrador dessa rede sempre priorizou a idéia do controle total sobre a topologia, sem redundâncias com o argumento de que em caso de falhas na rede é preferível perder algumas dezenas de minuto na troca do suposto equipamento (ou meio físico defeituoso) ao invés de não conseguir identificar problemas de convergência na Topologia.

Nessa mesma rede que chamaremos de Empresa X, todos os UpLinks estão conectados no Switch Core com um único cabo, sem caminhos alternativos ou redundância. Então faço a seguinte pergunta: O administrador dessa rede está correto? Eu diria que sim… Se não houver redundância ou Loop Físico entre os Switches não há função para o Spanning-Tree.


Mas é possível possuir o controle total da rede? Podemos confiar que um usuário não irá conectar um “Switch Hub” na rede para prover mais pontos ou ligar sem querer um ponto de rede do equipamento no próprio Switch?

O Protocolo Spanning-Tree poderia ajudar o Administrador da Empresa X em casos como esse bloqueando o Loop físico e/ou permitindo a utilização de meios físicos redundantes como fibra, cabo UTP ou via Wireless.

Na prática se o Switch estiver com o Spanning-Tree habilitado, irá encaminhar BPDUs -mensagens geradas pelo Root da Topologia . A rede efetuaria a convergência com o mínimo de perda em caso de falhas no meio físico ou Switches, deixando a disponibilidade dependente apenas dos timers do Max Age e do Forward Delay.

Olhando o desenho, quem é o Switch Root da Rede?

Em breve escreverei mais artigos sobre o STP. Dúvidas ou criticas? Deixem comentários!

Abraços