Os clientes frequentemente entram em contato com o Suporte Técnico da Cisco quando percebem que uma ou mais de suas portas de switch foram desativadas por erro; isto é, as portas têm um estado de errDisable. Eles querem saber por que isso aconteceu e como as portas podem voltar ao normal. Este documento descreve o que é o estado errDisable, como recuperá-lo e fornece dois exemplos de recuperação de errDisable. Em todo este documento, os termos errDisable e desativar erro são usados de forma intercambiável. (errDisable é o status de uma porta, como mostrado pelo comando show port command; error-disable ou error-disabled são os equivalentes em inglês para errDisable.)
Não existem requisitos específicos para este documento.
As informações neste documento são baseadas nestas versões de software e hardware. Você precisa deles para criar os exemplos neste documento:
Dois Switches da família Catalyst 4000/5000/6000 (ou equivalentes) em um ambiente de laboratório com configurações limpas. Nossa máquina principal era um Catalyst 5500 executando CatOS 5.4(2). Ela estava conectada a um Catalyst 6509 executando a versão 5.3(5a)CSX, mas poderia ser qualquer máquina CatOS compatível com EtherChannel e Portfast.
Dois cabos cruxados Ethernet RJ45.
CatOS 5.4(x) em, pelo menos, um Switch.
Duas portas FastEthernet em cada Switch apto a EtherChannel e portfast.
Uma conexão de terminal para um ou ambos os Switches.
As informações neste documento foram produzidas em um ambiente de laboratório isolado. Assegure-se de que, primeiro, você compreende o impacto potencial de qualquer comando em sua rede antes de utilizá-lo. O comando clear config all foi inserido em cada Switch para garantir uma configuração padrão. Se desejar reproduzir e fazer experiência com tais erros; tente duplicá-los apenas em um ambiente isolado que não cause impacto na rede em atividade. Esses exemplos são somente para instrução. A saída de alguns comandos foi truncada onde ela não aprimora a discussão.
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a sua rede estiver ativa, certifique-se de que entende o impacto potencial de qualquer comando.
Consulte as Convenções de Dicas Técnicas da Cisco para obter mais informações sobre convenções de documentos.
O recurso errDisable é suportado nos switches Catalyst que executam CatOS (Catalyst 2948G, 4500/4000, 5500/5000 e 6500/6000), bem como nos switches Catalyst que executam Cisco IOS (Catalyst 2900XL/3500XL, 2950, 2970, 3550, 4500 e 65000). A maneira como errDisable é implementado varia entre as plataformas. Este documento enfatizará especificamente a condição de desabilitação por erro para os Switches que estão executando o CatOS.
O recurso errDisable foi implementado primeiramente no CatOS versão 3.2(2). If the configuration showed a port to be enabled, but Software on the Switch detected an error situation on the port, the Software would shut down that port. In other words, the port was automatically disabled by the Switch operating system Software because of an error condition encountered on the port.
Quando uma porta está desativada devido a um erro, ela fica totalmente fechada e nenhum tráfego é enviado ou recebido por ela. O LED de porta é configurado para a cor laranja e ao digitar o comando show port o status de porta mostra errdisable. Aqui está um exemplo de como seria uma porta desativada por erro a partir da interface de linha de comando do switch.
Cat5500> (enable) show port 11/1 Port Name Status Vlan Level Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------ 11/1 errdisable 1 normal auto auto 10/100BaseTX
A função error-disable serve para duas finalidades. Primeiramente, ela deixa que o administrador saiba quando e onde há um problema de porta. Segundo, elimina a possibilidade de que esta porta leve outras portas do módulo (ou todo o módulo) a falhar devido a buffers monopolizados pela porta inválida, mensagens de erro de porta que monopolizam a comunicação entre os processos na placa, até mesmo causando, no final, problemas graves na rede. O recurso desativar erro ajuda a evitar essas situações.
Primeiramente, esse recurso foi implementado para tratar de situações especiais de colisão em que o Switch detectou colisões excessivas ou tardias em uma porta. As colisões excessivas ocorrem quando um quadro é descartado devido à identificação de 16 colisões em uma única linha. As colisões atrasadas ocorrem após cada dispositivo no cabo ter reconhecido que o cabo estava em uso. Esses tipos de erro podem ser causados por um cabo fora de especificação (muito longo, de tipo errado, com defeito), uma placa NIC ruim (com problemas físicos ou de driver) ou um erro de configuração da porta duplex. Essa última causa é comum devido às falhas na negociação correta da velocidade e duplex entre dois dispositivos conectados diretamente (por exemplo, uma placa NIC conectada a um Switch). Somente as conexões half-duplex deveriam enfrentar colisões em uma LAN; devido à natureza Carrier-Sense Multi-Access (CSMA) da Ethernet, as colisões são normais para half-duplex, desde que não excedam uma pequena porcentagem de tráfego.
À medida que os recursos do CatOS cresciam, havia mais maneiras de uma porta se tornar desativada por erro. Por exemplo, no catalyst 6500 executando catOS, o recurso Errdisable é suportado para estes problemas de conectividade:
Inspeção de ARP
Supressão de transmissão
Proteção da porta BPDU
Erro de configuração de canal
Falha de barras cruzadas
Incompatibilidade duplex
Erro de configuração de túnel de protocolo da camada 2
Limiar do túnel do protocolo da Camada 2 excedido
UDLD
A função error-disable permite que o Switch desligue uma porta quando encontra qualquer uma dessas situações. Lembre-se, o fato de uma porta ser desativada por erro não é, por si só, um motivo para alarme, desde que se possa determinar e resolver a causa. Uma porta desativada para erro é um sintoma de um problema maior que precisa ser resolvido.
Para se recuperar de errDisable, você deve fazer duas coisas:
Identifique e corrija o que fez com que as portas ficassem desativadas para erro (cabo, NICs, EtherChannel, etc.).
Se você não identificar e corrigir o problema subjacente que fez as portas serem desabilitadas para erros, as portas somente ficarão desativadas para erros novamente quando o problema ocorrer novamente. Alguns erros podem ocorrer com freqüência (um exemplo é o erro detectado pela proteção de porta BPDU, que pode ocorrer a cada dois segundos). Se tentou reativar as portas sem corrigir a origem do problema, elas apenas serão desativadas por erro novamente.
Ative a porta novamente.
Apenas corrigir a origem do problema não fará com que as portas sejam habilitadas novamente. Depois de corrigir a origem do problema, as portas ainda estarão desativadas (e os LEDs das portas ainda estarão alaranjados); as portas devem ser reativadas antes de se tornarem ativas. A princípio, a única maneira de habilitar outra vez a porta foi inserir manualmente o comando set port enable para as portas em questão. Com o tempo, foram adicionadas extensões opcionais ao recurso de desabilitação por erro para torná-lo mais flexível e automático.
Observação: uma porta desativada por erro não é o único motivo pelo qual um LED de porta pode ficar laranja; é apenas uma das razões. É por isso que é sempre bom verificar o status da porta com o comando show port.
Alguns clientes queriam ter a capacidade de determinar se uma porta deveria ser desativada devido a erros especiais de colisão descobertos pelo CatOS. Houve algumas situações, como se o link fosse uma conexão de backbone, por exemplo, em que o desligamento das portas seria pior do que os erros encontrados nas portas; seria mais desejável deixar as portas funcionando o máximo possível até que o problema possa ser resolvido, em vez de fechá-las. Portanto, na versão 4.2(2), um novo comando foi adicionado na opção errport de definição de chamada de CatOS que permite que o administrador determine qual ação o Switch tomou ao descobrir uma porta que tivesse esses erros especiais de colisão. The original and default state is set option errport disable , where the Switch will put a port in error-disabled state when encountering the error-disable type of special collision errors. Por outro lado, se for utilizado o comando set option errport enable, o Switch deixará habilitadas as portas mesmo se encontrar erros de colisão, os quais normalmente desabilitariam essas portas.
Esse comando afeta o switch globalmente; não pode ser emitido para uma porta individual. Ele não está listado na referência de comando, mas está listado nas notas de versão do 4.2(2) (Notas de versão da Versão de Software 4.x da Família Catalyst 5000). Observe que esse comando parece ser contraintuitivo; é necessário habilitar a opção errport para desabilitar o recurso err-disable (habilitado por padrão). De forma mais clara, apenas utilize o comando set option errport enable para evitar que uma porta se torne desativada para erro.
O comando set option errport só é recomendado se você perceber que há algum risco de outras portas no módulo serem afetadas se você permitir que essas condições de erro continuem. É apenas uma medida de interrupção, não uma "solução" para o problema; ele simplesmente evita que as portas que estão encontrando esses erros sejam desligadas até que você possa resolver o problema real. Use com cuidado.
Com a versão 5.4(1) do CatOS, é apresentado um novo comando chamado set errdisable-timeout. Esse comando é uma versão mais sofisticada do comando set option errport discutido anteriormente. Esse comando reabilitará automaticamente uma porta desabilitada por erro após um período de tempo configurável (de 30 segundos a 24 horas, especificado em segundos), eliminando a necessidade de fazê-lo manualmente.
Esse comando afetará as portas que são habilitadas pela configuração atual no Switch mas que foram colocadas no estado desativar erro pelo Software CatOS. Use o comando show errdisable-timeout para ver o status atual do recurso errdisable-timeout. É possível especificar cinco áreas separadas em que esse recurso pode ser habilitado: bpdu-guard, channel-misconfig, duplex-mismatch, (que inclui os erros de colisão especiais acima mencionados), udld, outros. Dessa forma, ele ainda pode oferecer proteção permanente de desabilitação por erro em áreas onde você deseja, mas permite que você escolha seletivamente áreas onde você prefere que as portas continuem funcionando até que você possa corrigir o problema.
Nas versões 5.2.1 e 5.2.2 do software do Catalyst 6000 Series, há um defeito de software que provoca interrupções na rede quando uma porta muda o estado para desativada para erro. Quando uma porta entra no modo errDisable, o Switch faz com que todos os endereços MAC conhecidos sejam acidentalmente conhecidos na porta desabilitada por erro. Isso causará surtos de rede na VLAN associada. Esse defeito de software tem o ID de erro Cisco CSCdm48887 e o problema é resolvido nas versões de software 5.2.3 e posterior.
A solução temporária para evitar esse problema é a seguinte:
Emita o comando set option errport enable para desabilitar o recurso de erro desabilitado.
Reative todas as portas com erro desativado usando o comando set port enable mod_num/port_num.
Exemplo: set port enable 3/1
Limpe a tabela de endereços MAC usando o comando limpar cam dinâmico para restaurar os endereços MAC dinamicamente registrados.
Neste ponto do documento, fornecemos dois exemplos de como você pode encontrar uma porta desativada por erro e como corrigi-la; uma breve discussão de três outros motivos pelos quais uma porta pode ficar desativada por erro; e um resumo dos comandos discutidos relacionados às portas desativadas por erro. Os exemplos específicos mostrados a seguir para esses problemas podem ser duplicados com facilidade em um ambiente de laboratório.
Use estas etapas para recuperar uma porta do estado errDisable:
Versão do software utilizada neste documento
The show version command displays the Software version the Switch is running for this document. Isto está aqui apenas para mostrar qual versão do CatOS estávamos usando para este teste e quais módulos estavam envolvidos.
Cat5500> (enable) show version WS-C5500 Software, Version McpSW: 5.4(2) NmpSW: 5.4(2) Copyright (c) 1995-2000 by Cisco Systems NMP S/W compiled on Apr 7 2000, 16:59:29 MCP S/W compiled on Apr 07 2000, 16:49:24 System Bootstrap Version: 5.1(1) Hardware Version: 1.3 Model: WS-C5500 Serial #: 069041642 Mod Port Model Serial # Versions --- ---- ---------- --------- ---------------------------------------- 1 0 WS-X5540 013459824 Hw : 1.1 Fw : 5.1(1) Fw1: 5.1(1) Sw : 5.4(2) Sw : 5.4(2) 11 24 WS-X5225R 012121634 Hw : 3.1 Fw : 4.3(1) Sw : 5.4(2) DRAM FLASH NVRAM Module Total Used Free Total Used Free Total Used Free ------ ------- ------- ------- ------- ------- ------- ----- ----- ----- 1 32768K 18567K 14201K 8192K 4171K 4021K 512K 179K 333K Uptime is 0 day, 0 hour, 4 minutes Cat5500> (enable) show module Mod Slot Ports Module-Type Model Status --- ---- ----- ------------------------- ------------------- -------- 1 1 0 Supervisor IIG WS-X5540 ok 15 1 Route Switch Feature Card 11 11 24 10/100BaseTX Ethernet WS-X5225R ok Mod Module-Name Serial-Num --- ------------------- -------------------- 1 00013459824 11 00012121634 Mod MAC-Address(es) Hw Fw Sw --- -------------------------------------- ------ ---------- ----------------- 1 00-90-ab-28-d0-00 to 00-90-ab-28-d3-ff 1.1 5.1(1) 5.4(2) 5 00-10-7b-7c-09-d4 to 00-10-7b-7c-09-df 3.0 3.1(1) 5.4(2) 6 00-e0-1e-6c-80-da to 00-e0-1e-6c-80-dc 1.0 4.1(1) 5.4(2) 8 00-10-7b-44-16-40 to 00-10-7b-44-16-57 1.3 3.1(1) 5.4(2) 10 00-10-7b-0c-32-d0 to 00-10-7b-0c-32-db 2.0 3.1(1) 5.4(2) 11 00-50-a2-f4-e4-50 to 00-50-a2-f4-e4-67 3.1 4.3(1) 5.4(2)
Como determinar se as portas estão no estado errDisable
Você pode inserir o comando show port para determinar se sua porta foi desabilitada por erro. Este é um exemplo de uma porta ativa; mais abaixo está a mesma porta no estado desativado por erro.
Cat5500> (enable) show port 11/1 Port Name Status Vlan Level Duplex Speed Type ----- ------- ---------- ---------- ------ ------ ----- ------------ 11/1 connected 1 normal a-half a-100 10/100BaseTX Cat5500> (enable) show port 11/1 Port Name Status Vlan Level Duplex Speed Type ----- ------- ---------- ---------- ------ ------ ----- ------------ 11/1 errdisable 1 normal auto auto 10/100BaseTX
Observação: quando uma porta é desativada por erro, o LED associado à porta no painel frontal fica laranja estável.
Como determinar a razão para o estado de erro desativado (mensagens de console, syslog, show errdisable-timeout)
Quando o switch coloca uma porta no estado desativada por erro, ele envia uma mensagem ao console e descreve por que a porta foi desativada. Estas são duas mensagens de exemplo que mostram por que uma porta está desativada: um do recurso de proteção BPDU de portfast e outro de um problema de configuração do EtherChannel.
2000 May 09 19:09:18 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast enable port. Disabling 11/1 2000 May 09 19:09:18 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port 2000 May 09 19:22:11 %SPANTREE-2-CHNMISCFG: STP loop - channel 11/1-2 is disabled in vlan 1 2000 May 09 19:22:11 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port 11/1-2
Observação: as mensagens não indicam explicitamente errDisable ou error-disabled; no entanto, eles indicam que o switch está desativando a porta. Após as mensagens do console serem geradas, elas não são salvas a menos que um servidor de syslog seja usado na rede. If you configure the Switch to send these messages to a syslog server, then you will have a more permanent record of when and why the port was disabled. For information on how to configure your Switch to send messages to a syslog server, see the document Configuring System Message Logging in the CatOS 5.4 Configuration Guide.
Se você estiver executando o CatOS 5.4(1) ou posterior, há um recurso chamado errdisable-timeout que, se habilitado, informa por que uma porta foi desabilitada. Este é um exemplo
Cat5500> (enable) show errdisable-timeout ErrDisable Reason Timeout Status Port ErrDisable Reason ------------------- -------------- ---- ---------------- bpdu-guard enable 11/1 bpdu-guard channel-misconfig disable duplex-mismatch disable udld disable other disable Interval: 30 seconds
Como corrigir o problema. Depois de descobrir por que as portas foram desabilitadas, você deve primeiro corrigir o problema raiz e, em seguida, habilitar novamente a porta.
Correção do problema principal
Isso depende do problema que está desencadeando. Várias coisas poderiam disparar o desligamento. Essas são algumas das causas mais comuns e perceptíveis.
Configuração de EtherChannel incorreta
Para que o EtherChannel funcione, as portas envolvidas devem ter configurações consistentes; a mesma VLAN, o mesmo modo de tronco, a mesma velocidade, o mesmo duplex e assim por diante. A maioria das diferenças de configuração em um switch são identificadas e relatadas quando você cria o canal. Em algumas situações, geralmente quando você usa o modo ON (ao contrário de auto ou desirable), tudo pode ser consistente em um switch para que o switch comece a canalizar. No entanto, o switch vizinho conectado não pode ser definido da mesma forma e pode fazer com que o primeiro switch seja desativado por erro. Se ambos os switches suportarem o Protocolo de Agregação de Portas (PAgP - Port Aggregation Protocol), você poderá configurar os modos de canal em cada switch para que sejam desejáveis em vez de ativados para evitar esse problema.
Incompatibilidade duplex
As incompatibilidades de duplex são comuns devido às falhas de autonegociação apropriada de velocidade e duplex. Ao contrário de semi-duplex, que deve aguardar até que nenhum outro dispositivo esteja transmitindo no mesmo segmento de LAN, um dispositivo full-duplex transmitirá sempre que tiver algo para enviar, independentemente de outros dispositivos. Se essa transmissão ocorrer enquanto o dispositivo semi-duplex estiver transmitindo, ele a considerará uma colisão (durante o intervalo de tempo) ou uma colisão tardia (após o intervalo de tempo). Como o dispositivo full-duplex nunca espera colisões, ele não perceberá que precisa retransmitir esse pacote descartado. Uma taxa de porcentagem baixa de colisões é normal com o modo semi-duplex, mas não com o modo full-duplex. Se a porta do switch recebe muitas colisões atrasadas, isso geralmente indica um problema de incompatibilidade de duplex; certifique-se de que as portas em ambos os lados do cabo estejam configuradas com a mesma velocidade e duplex. O comando show port informará a velocidade e o duplex das portas do switch Catalyst. As versões posteriores do Cisco Discovery Protocol (CDP) podem avisá-lo sobre uma incompatibilidade de duplex antes que a porta seja colocada em estado de inativa por erro. Além disso, pode haver configurações em uma placa NIC que cause o problema (coisas como recursos de polaridade automática - caso esteja em dúvida, desative-os). Se tiver várias placas NIC de um fornecedor e todas aparentemente apresentarem o mesmo problema, consulte o site do fabricante para obter informações sobre as notas de versão e certifique-se de que os drivers mais atualizados do fabricante da NIC estão instalados. Outras causas para colisões tardias incluem uma NIC incorreta (com problemas físicos, não apenas problemas de configuração), um cabo incorreto ou um segmento de cabo muito longo.
2000 May 09 19:19:09 %CDP-4-DUPLEXMISMATCH:Full/half duplex mismatch detected on port 11/3
Proteção da porta BPDU
Algumas versões mais recentes do software do switch monitoram se o portfast está habilitado em uma porta. Uma porta que utiliza portfast deve estar conectada a uma estação final, não a dispositivos que gerem pacotes STP chamados BPDUs. Se o Switch observar uma BPDU recebida em uma porta com portfast habilitado, ele colocará a porta em modo errDisable.
UDLD
O UDLD é um protocolo que, em algumas novas versões de software, determina se a comunicação em um link é somente unidirecional e, portanto, parcialmente “quebrada”. Um cabo de fibra danificado ou outro problema de cabeamento/porta pode causar essa comunicação apenas unidirecional. Podem ocorrer circuitos de árvore de abrangência com esse problema. A UDLD permite à porta detectar um enlace unidirecional e pode ser configurada para colocar uma porta em estado errDisable quando esta condição for detectada.
Outro
Qualquer processo no Switch que reconheça um problema na porta pode colocá-lo no estado error-disable. Veja as mensagens do console ou a mensagem que foi enviada para um servidor syslog que informam o motivo pelo qual a porta está sendo fechada. Além disso, se o recurso errdisable-timeout estiver habilitado (no mínimo CatOS 5.4(1)), o show errdisable-timeout informará a razão geral da desativação da porta.
Reabilitar a porta
Depois de corrigir o problema raiz, as portas ainda estarão desativadas; você deve reabilitar as portas. Essa reabilitação pode ser efetuada manualmente por meio do comando set port enable.
Cat5500> (enable) set port enable 11/1-2 Ports 11/1-2 enabled.
Se você tiver o CatOS 4.2(2) ou posterior, pode-se usar o comando set option errport como descrito acima para evitar que as portas se tornem desativadas por erro. Como você não está realmente corrigindo a origem do problema, isso pode ser arriscado. Se tiver o CatOS 5.4(1) ou posterior, você poderá usar o comando errdisable-timeout para automaticamente habilitar outra vez as portas, conforme descrito na próxima seção.
Como Reativar a Porta Automaticamente Utilizando errdisable-timeout - CatOS 5.4(1)
O comando errdisable-timeout permite escolher seletivamente que tipo de erro reabilitará automaticamente as portas após um determinado período de tempo. A saída mostra o estado padrão que é desabilitado para intervalo errdisable (não ativo) para todas as cinco condições possíveis. Se qualquer condição fosse habilitada, as portas com essa condição seriam reabilitadas após 30 segundos.
Cat5500> (enable) show errdisable-timeout ErrDisable Reason Timeout Status ------------------- -------------- bpdu-guard disable channel-misconfig disable duplex-mismatch disable udld disable other disable Interval: 30 seconds
Para ativar o intervalo errDisable, use o seguinte comando para escolher as condições de errDisable.
Cat5500> (enable) set errdisable-timeout enable ? bpdu-guard BPDU Port-guard channel-misconfig Channel misconfiguration duplex-mismatch Duplex Mismatch udld UDLD other Reasons other than the above all Apply errDisable timeout to all reasons Cat5500> (enable) set errdisable-timeout enable bpdu-guard Successfully enabled errdisable-timeout for bpdu-guard. Cat5500> (enable) set errdisable-timeout interval 30 Successfully set errdisable timeout to 30 seconds.
Um recurso interessante desse comando é que, se você habilitar errdisable-timeout, ele listará geralmente por que as portas foram colocadas em estado de desabilitação por erro. Para obter descrições mais detalhadas, consulte as mensagens exibidas no momento da ocorrência. Lembre-se de que o primeiro passo para consertar a condição de desabilitado para erro é reparar o erro original que causou o desligamento. Observe abaixo que o motivo da porta 11/1 ter sido desativada foi devido ao recurso de proteção de BPDU.
Cat5500> (enable) show errdisable-timeout ErrDisable Reason Timeout Status Port ErrDisable Reason ------------------- -------------- ---- ----------------- bpdu-guard enable 11/1 bpdu-guard channel-misconfig disable duplex-mismatch disable udld disable other disable Interval: 30 seconds
Aqui está um exemplo do que é exibido quando o Switch reativa uma porta por causa da função errdisable-timeout.
Cat5500> (enable) 2000 May 09 19:17:27 %MGMT-5-ERRDISPORTENABLED:Port 11/1 err-disabled by bpdu-guard enabled by errdisable timeout
E se você reabilitar a porta sem corrigir o problema?
Se você reabilitar a porta sem corrigir o problema, as portas ficarão novamente desabilitadas para erros. Isso continuará repetidamente até que você resolva o problema real. Observe as três mensagens a seguir. Na primeira, o Switch descreve a porta de desabilitação 11/1 porque ela recebeu uma BPDU em uma porta que está habilitada para portfast (esse erro causará essa situação se bpdu-guard estiver ativado). Após 25 segundos, a porta é automaticamente reabilitada pelo recurso errdisable-timeout. Quatro segundos mais tarde, a porta é novamente desativada por erro, pois o verdadeiro problema não foi solucionado.
2000 May 09 19:17:33 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast enable port. Disabling 11/1 2000 May 09 19:17:58 %MGMT-5-ERRDISPORTENABLED:Port 11/1 err-disabled by bpdu-guard enabled by errdisable timeout 2000 May 09 19:18:02 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast enable port. Disabling 11/1
O benefício de precisar reabilitar as portas manualmente é que isso serve como um lembrete e como um aviso de que é necessário lidar com o problema real.
Posso eliminar portas de se tornarem desativadas por erro devido a colisões
Segue um exemplo de como impedir que ocorram erros de desabilitação de porta no Switch devido a colisões excessivas ou com atraso. O comando set option errport tornou-se disponível no CatOS versão 4.2(2). Outra vez, lembre-se de que isto deveria ser usado apenas como um tipo de medida de intervalo de parada. It keeps the ports from being error-disabled due to collisions but can leave you vulnerable to collisions that would normally cause the Switch to shut the port down. Ao executar este comando, ele impedirá que o Switch desative a porta devido a colisões.
Cat5500> (enable) set option errport enable Error port option is enabled Cat5500> (enable) show option errport Option errport : enabled
Este é um exemplo de como retomar o estado padrão, que está permitindo que o Switch desabilite uma porta devido a erros.
Cat5500> (enable) set option errport disable Error port option is disabled Cat5500> (enable) show option errport Option errport : disabled
O comando show option errport mostrará o modo atual em que o recurso de desabilitação por erro está. Além disso, o comando set option errport enable não corrige a causa dos erros; ele apenas impede que a porta seja desativada devido aos erros. Ainda existe a possibilidade de que as portas errDisable afetem outras portas no módulo se os erros persistirem ou se tornarem drásticos. Assim, você deve usar este comando somente se compreender que estes erros podem potencialmente causar grandes problemas dentro do módulo do Switch e estiver disposto a correr tais riscos.
Nesta seção, apresentamos dois exemplos de correção de uma porta desativada por erro.
A new feature starting in CatOS 5.4(1) allows the Switch to monitor ports that have portfast enabled. Uma porta que usa portfast deve ser conectada somente a uma estação final (como uma estação de trabalho ou um servidor), não a dispositivos que geram BPDUs de spanning tree, como switches ou bridges e roteadores fazendo bridging. If the Switch receives a spanning tree BPDU on a port that has portfast enabled, it will put the port in errDisable mode in order to guard against potential loops. O Portfast supõe que uma porta em um switch não tenha possibilidade de gerar um loop físico e, portanto, ignora as verificações iniciais de spanning tree para essa porta, evitando que as estações finais atinjam o tempo limite na inicialização. O Portfast deve ser implementado com cuidado pelo administrador da rede; nas portas em que o portfast foi habilitado, o BPDU guard ajuda a garantir que a LAN permaneça sem loops.
Veja aqui como ativar esse recurso. Esse exemplo foi selecionado porque é fácil criar uma situação desabilitada para erro.
Cat5500> (enable) set spantree portfast bpdu-guard enable Spantree portfast bpdu-guard enabled on this switch.
Nosso switch Catalyst 5500 está conectado a outro switch (um 6509) que tornamos a raiz do spanning tree. O 6509 enviará BPDUs a cada 2 segundos (usando as configurações padrão de spanning tree). Quando você ativa portfast na porta do Switch 5500, o recurso guarda de bpdu procurará BPDUs vindos dessa porta. Quando um BPDU é recebido na porta, significando que um dispositivo não final foi detectado nela, o recurso bpdu-guard desativará a porta para impedir um possível loop da árvore de abrangência.
Cat5500> (enable) set spantree portfast 11/1 enable Warning: Spantree port fast start should only be enabled on ports connected to a single host. Connecting hubs, concentrators, switches, bridges, etc. to a fast start port can cause temporary spanning tree loops. Use with caution. Spantree port 11/1 fast start enabled. Cat5500> (enable) 2000 May 09 19:09:18 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast enable port. Disabling 11/1 2000 May 09 19:09:18 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port 11/1
Na mensagem acima, o switch indicou que recebeu uma BPDU em uma porta habilitada para portfast, portanto, está desligando a porta 11/1. Quando observamos o status da porta, lemos errDisable.
Cat5500> (enable) show port 11/1 Port Name Status Vlan Level Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------ 11/1 errdisable 1 normal auto auto 10/100BaseTX
Para corrigir essas situações, devemos abordar o problema adjacente e, em seguida, reabilitar a porta. Como essa porta possui uma conexão incorreta (portfast habilitada e conectada a outro Switch), iremos desativar o recurso portfast. Novamente, o portfast deve ser usado somente em portas conectadas a estações finais.
Cat5500> (enable) set spantree portfast 11/1 disable Spantree port 11/1 fast start disabled.
Apesar de corrigirmos a causa básica do problema, note que a porta ainda está no estado desativar erro. Se você observasse o LED de porta, ainda assim ele ficaria laranja. Devemos reabilitar a porta antes que ela se torne ativa novamente.
Cat5500> (enable) show port 11/1 Port Name Status Vlan Level Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------ 11/1 errdisable 1 normal auto auto 10/100BaseTX
No exemplo a seguir, reabilitamos a porta manualmente, usando o comando set port enable. Agora a porta retornará ao status normal.
Cat5500> (enable) set port enable 11/1 Port 11/1 enabled. Cat5500> (enable) show port 11/3 Port Name Status Vlan Level Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------ 11/1 connected 1 normal a-half a-100 10/100BaseTX
Aqui está uma outra situação comum de desabilitação de erro que pode ocorrer em portas compatíveis com EtherChannel. Se um switch estiver configurado para EtherChannel e o outro não, ele pode fazer com que o processo de spanning tree desligue as portas canalizadas no lado configurado para EtherChannel. In this scenario we connected two crossover cables from the 5500 Switch to another Switch. Ligamos o EthernetChannel no Switch 5500, usando o comando set port channel 11/1-2 ligado. O modo ativado do EtherChannel não envia pacotes PAgP para negociar com o outro lado antes da criação do canal. ele apenas supõe que o outro lado esteja canalizando. Além disso, não ligamos o EtherChannel para o outro switch; deixamos essas portas como portas não canalizadas individuais. Se esse estado durar um minuto ou aproximadamente isso, o STP no 5500 entenderá que existe um loop. Isso fará com que as portas de canalização sejam colocadas em estado de desabilitação por erro. Observe abaixo que um loop foi detectado e as portas foram desabilitadas. O comando show port channel mostra que as portas não estão mais canalizando; e, quando observamos uma das portas envolvidas, vemos que seu status é errdisable.
Cat5500> (enable) 2000 May 09 19:20:02 %PAGP-5-PORTTOSTP:Port 11/1 joined bridge port 11/1-2 2000 May 09 19:20:27 %PAGP-5-PORTTOSTP:Port 11/2 joined bridge port 11/1-2 2000 May 09 19:22:11 %SPANTREE-2-CHNMISCFG: STP loop - channel 11/1-2 is disabled in vlan 1 2000 May 09 19:22:11 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port 11/1-2 2000 May 09 19:22:11 %PAGP-5-PORTFROMSTP:Port 11/2 left bridge port 11/1-2 Cat5500> (enable) show port channel No ports channeling
O EtherChannel foi desativado porque as portas foram colocadas em error-disable neste switch.
Cat5500> (enable) show port 11/1 Port Name Status Vlan Level Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------ 11/1 errdisable 1 normal auto auto 10/100BaseTX
Para determinar qual foi o problema, precisamos examinar a mensagem de erro. A mensagem indicava que o EtherChannel encontrou um loop de spanning tree. Como sabemos no parágrafo acima, isso pode ocorrer quando um dispositivo (nosso switch nesse caso) tem o EtherChannel ativado manualmente usando o modo ON (ao contrário do desejável) e o outro dispositivo conectado (o outro switch nesse caso) não tem o EtherChannel ativado. Uma maneira de corrigir a situação é ajustar o modo de canal para desirable em ambos os lados da conexão e, em seguida, reabilitar as portas. Isso fará com que cada lado forme um canal apenas se ambos concordarem em canalizar. Se eles não concordarem em canalizar, continuarão funcionando como portas normais.
Observação: para obter uma lista de itens que podem causar erros de configuração do EtherChannel, consulte o Guia de Configuração no EtherChannel para obter a versão do CatOS que você está usando. As versões mais recentes têm seções específicas do Guia de configuração intituladas Configuração de Fast EtherChannel e Gigabit EtherChannel que listam as dependências para um canal se formar corretamente, incluindo os modos de canal a configurar.
Cat5500> (enable) set port channel 11/1-2 desirable non-silent Port(s) 11/1-2 are assigned to admin group 21. Port(s) 11/1-2 channel mode set to desirable. Cat5500> (enable) show port 11 Port Name Status Vlan Level Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------ 11/1 errdisable 1 normal auto auto 10/100BaseTX 11/2 errdisable 1 normal auto auto 10/100BaseTX
Observe que apesar de termos desativado o recurso EtherChannel e definido o modo EtherChannel como desejável, as portas ainda estão desativadas. Corrigimos a causa do problema, mas agora é necessário re-habilitar as portas antes de poder usá-las.
Cat5500> (enable) set port enable 11/1-2 Ports 11/1-2 enabled. Cat5500> (enable) show port 11 Port Name Status Vlan Level Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------ 11/1 connected 1 normal a-full a-100 10/100BaseTX 11/2 connected 1 normal a-full a-100 10/100BaseTX Cat5500> (enable) show port channel 11/1 Port Status Channel Admin Ch Mode Group Id ----- ---------- -------------------- ----- ----- 11/1 connected desirable non-silent 21 833 11/2 connected desirable non-silent 21 833 Port Device-ID Port-ID Platform ----- ------------------------------- ------------------------- ---------------- 11/1 TBA04090489(Cat6000) 5/13 WS-C6506 11/2 TBA04090489(Cat6000) 5/14 ----- ------------------------------- ------------------------- ----------------
show version — para exibir a versão do software que está sendo usado no switch
show module — para exibir quais módulos são usados no switch
show port — para exibir o status atual da porta do switch
show option errport — para exibir o status do comando set option errport
show errdisable-timeout — para exibir as configurações atuais do recurso errdisable-timeout e o motivo pelo qual todas as portas estão atualmente desabilitadas para erro
show port — para exibir o status atual da porta do switch
show port channel — para exibir o status atual do EtherChannel
show option errport — para exibir o status do comando set option errport
set option errport disable — para permitir que o switch desative qualquer porta que tenha erros que o sistema operacional considere dignos de ser desabilitada. Esse é o estado padrão e deverá ser diferente apenas se alguém tiver emitido o comando set option errport enable anteriormente
show errdisable-timeout — para exibir as configurações atuais do recurso errdisable-timeout e o motivo pelo qual todas as portas estão atualmente desabilitadas para erro
set errdisable-timeout — pode ser usado para ajudar a determinar por que uma porta foi desabilitada por erro (usado em conjunto com o comando show errdisable-timeout)
Sintaxe: | show version |
---|---|
Conforme utilizado neste documento: | show version |
Sintaxe: | show module [mod_num] |
---|---|
Conforme utilizado neste documento: | show module |
Sintaxe: | show port [mod_num[/port_num]] |
---|---|
Conforme utilizado neste documento: | show port 11/1 show port 11 |
Sintaxe: | show port channel [mod_num[/port_num]] [statistics | info [árvore de abrangência | tronco | protocol | gmrp | gvrp | qos] |
---|---|
Conforme utilizado neste documento: | mostrar canal de porta |
Sintaxe: | set port channel port_list mode {on | desativado | desejável | auto} [silencioso | não silencioso] |
---|---|
Conforme utilizado neste documento: | set port channel 11/1-2 desirable non-silent |
Sintaxe: | set port enable mod_num/port_num |
---|---|
Conforme utilizado neste documento: | set port enable 11/1-2 |
Sintaxe: | show errdisable-timeout |
---|---|
Conforme utilizado neste documento: | show errdisable-timeout |
Sintaxe: | set errdisable-timeout [enable|disable] [bpdu-guard | channel-misconfig | incompatibilidade bidirecional | udld | outros] |
---|---|
Conforme utilizado neste documento: | set errdisable-timeout enable bpdu-guard |
Sintaxe: | set errdisable-timeout interval seconds |
---|---|
Conforme utilizado neste documento: | set errdisable-timeout interval 30 |
Sintaxe: | set spantree portfast mod_num/port_num {enable | desabilitar} |
---|---|
Conforme utilizado neste documento: | set spantree portfast 11/1 enable set spantree portfast 11/1 disable |
Sintaxe: | set spantree portfast bpdu-guard {enable | desabilitar} |
---|---|
Conforme utilizado neste documento: | set spantree portfast bpdu-guard enable |
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
04-Dec-2001
|
Versão inicial |