HomeHardwareRecuperar portas Err-Disable em switches Cisco

Recuperar portas Err-Disable em switches Cisco

Advertisement

Você já teve um pesadelo em que sua porta de switch Cisco de repente caiu, presa na inevitável aderência de desativação de erros? Este artigo irá orientá-lo através dos meandros da desativação de erros, descobrir suas causas e oferecer soluções de recuperação poderosas.

Advertisement

A porta errdisabled é a porta que foi desativada pelo switch Cisco porque uma condição de erro é detectada. Essa condição de erro pode ser causada por vários fatores, como configuração incorreta, loopback, troca de links, segurança ou violações de protocolo. As portas com erro desabilitado não podem enviar ou receber tráfego de dados até que essas portas sejam reativadas manual ou automaticamente.

As portas com erros podem causar interferência grave na rede, especialmente se estiverem conectadas a dispositivos críticos, como servidores, roteadores ou dispositivos finais. Portanto, é importante saber como lidar com portas erráticas e evitar que elas aconteçam no futuro.

Advertisement
cisco error recovery setting

Neste artigo, discutiremos o seguinte:

Advertisement
  • Quais são as causas comuns de portas errdisabled e como diagnosticar o problema?
  • Como reativar portas errdisabled manualmente ou automaticamente usando o recurso errdisable recovery.
  • Como evitar portas errdisabled usando os recursos errdisable detect e errdisable flap.
  • Como monitorar o status de portas errdisabled usando os comandos show interfaces status err-disabled e show errdisable recovery .

Causas comuns de portas errdisabled e como diagnosticar o problema

Muitas condições de erro podem fazer com que uma porta seja errodeficiente em switches Cisco. Algumas das condições de erro mais comuns são:

  • Misconfigurasi: Configuração incorreta é uma configuração incorreta que causa conflitos ou incompatibilidades entre portas conectadas. Por exemplo, se as portas conectadas tiverem velocidades ou duplexes diferentes, ou se as portas conectadas tiverem modos de entroncamento diferentes, essas portas poderão se tornar errdisabled.
  • Loopback: Loopback é uma condição na qual uma porta recebe pacotes de volta enviados pela própria porta. Isso pode acontecer se houver um cabo conectado entre duas portas no mesmo switch ou se um dispositivo enviar de volta os pacotes recebidos. Os loopbacks podem fazer com que o tráfego de rede se torne excessivo e interfira no desempenho do switch.
  • Link flapping: Link flapping é uma condição na qual as portas sobem e descem repetidamente devido a interferência física ou lógica com a conexão. Isso pode ser causado por cabos danificados, conectores soltos, interferência eletromagnética ou um dispositivo defeituoso. A oscilação de link pode causar instabilidade na rede e reduzir a confiabilidade do switch.
  • Segurança: Segurança é uma condição em que uma porta viola as regras de segurança definidas pelo switch. Isso pode acontecer se um dispositivo não autorizado tentar acessar a rede ou se um dispositivo tentar executar um ataque à rede. Alguns recursos de segurança que podem fazer com que uma porta seja errdisabled são Port Security, 802.1x, DHCP Snooping, Dynamic ARP Inspection e IP Source Guard.
  • Violação de protocolo: uma violação de protocolo é uma condição na qual uma porta viola as regras de protocolo definidas pelo switch. Isso pode acontecer se qualquer dispositivo não oferecer suporte ou estar em conformidade com o protocolo usado pelo switch, ou se qualquer dispositivo enviar um pacote inválido ou mal-intencionado. Alguns protocolos que podem fazer com que uma porta se torne errdisabled são Spanning Tree Protocol (STP), EtherChannel, UDLD e VTP.

Para diagnosticar o problema que faz com que a porta se torne errdisabled, podemos usar o comando show interfaces status err-disabled no switch. Esse comando exibirá uma lista de portas que estão com erro desabilitado e o motivo pelo qual essas portas estão desabilitadas. Veja a seguir um exemplo de saída desse comando:

Switch# show interfaces status err-disabled
Port      Name               Status       Reason
Gi1/0/1                      err-disabled link-flap
Gi1/0/2                      err-disabled bpduguard
Gi1/0/3                      err-disabled psecure-violation
Gi1/0/4                      err-disabled udld
Gi1/0/5                      err-disabled channel-misconfig

A partir da saída acima, podemos ver que a porta Gi1/0/1 torna-se errdisabled devido à oscilação de link, a porta Gi1/0/2 torna-se errdisabled devido à violação de STP, a porta Gi1/0/3 torna-se errdisabled devido à violação de Port Security, a porta Gi1/0/4 torna-se errdisabled devido à violação UDLD e a porta Gi1/0/5 torna-se errdisabled devido à configuração incorreta do EtherChannel.

Além disso, também podemos usar o comando show logging para exibir mensagens de log relacionadas à porta errdisabled. Esse comando exibirá um registro histórico da atividade do switch, incluindo mensagens de erro geradas por portas errdisabled. Veja a seguir um exemplo de saída desse comando:

Switch# show logging
...
%PM-4-ERR_DISABLE: link-flap error detected on Gi1/0/1, putting Gi1/0/1 in err-disable state
%PM-4-ERR_DISABLE: bpduguard error detected on Gi1/0/2, putting Gi1/0/2 in err-disable state
%PM-4-ERR_DISABLE: psecure-violation error detected on Gi1/0/3, putting Gi1/0/3 in err-disable state
%PM-4-ERR_DISABLE: udld error detected on Gi1/0/4, putting Gi1/0/4 in err-disable state
%PM-4-ERR_DISABLE: channel-misconfig (STP) error detected on Gi1/0/5, putting Gi1/0/5 in err-disable state
...

Na saída acima, podemos ver que a mensagem de log mostra o motivo pelo qual a porta se tornou errdisabled e a hora em que o erro ocorreu.

Usando os comandos acima, podemos descobrir as causas comuns de portas errdisabled e como diagnosticar o problema. A próxima etapa é reativar as portas errdisabled e evitar que elas aconteçam no futuro.

Como reativar portas errdisabled manualmente ou automaticamente

Depois de sabermos a causa da porta errdisabled, podemos tomar medidas para resolver o problema e reativar a porta. Há duas maneiras de reativar as portas errdisabled: manualmente ou automaticamente.

Como reativar portas errdisabled manualmente

A maneira de reativar manualmente as portas errdisabled é usar o comando shutdown e no shutdown no modo de configuração da interface. Esse comando desativa e reativa a porta à força, removendo o estado errdisabled dessa porta. Veja a seguir um exemplo de como usar esse comando:

Switch# configure terminal
Switch(config)# interface gigabitethernet 1/0/1
Switch(config-if)# shutdown
Switch(config-if)# no shutdown
Switch(config-if)# end

O comando acima reativará a porta Gi1/0/1 que foi errodeficiente devido à oscilação de link. No entanto, observe que esse método é apenas temporário porque a porta pode reverter para errdisabled se a condição de erro ainda existir ou se repetir. Portanto, antes de reativar manualmente uma porta errdisabled, devemos certificar-se de que o problema que causou a porta errdisabled seja resolvido ou evitado.

Como reativar portas errdisabled automaticamente

A maneira de reativar portas errdisabled automaticamente é usar o recurso errdisable recovery no switch. Esse recurso permitirá que o switch reative portas errdisabled automaticamente após um certo tempo, sem a necessidade de intervenção manual. Esse recurso pode economizar tempo e esforço na resolução de portas com erros desativados, especialmente se houver muitas portas afetadas.

Para habilitar o recurso de recuperação errdisable, devemos usar os comandos errdisable recovery cause e errdisable recovery interval no modo de configuração global. O comando errdisable recovery cause especificará quais condições de erro esse recurso pode manipular, enquanto o comando errdisable recovery interval especificará o tempo limite em segundos antes que o switch reative a porta errdisabled. Veja a seguir um exemplo de como usar esse comando:

Switch# configure terminal
Switch(config)# errdisable recovery cause link-flap
Switch(config)# errdisable recovery cause bpduguard
Switch(config)# errdisable recovery cause psecure-violation
Switch(config)# errdisable recovery cause udld
Switch(config)# errdisable recovery cause channel-misconfig
Switch(config)# errdisable recovery interval 300
Switch(config)# end

O comando acima habilitará a recuperação errdisable para as cinco condições de erro mais comuns, ou seja, troca de link, violação de STP, violação de segurança de porta, violação de UDLD e configuração incorreta de EtherChannel. Além disso, o comando também definirá um tempo limite de 300 segundos (5 minutos) antes que o switch reative a porta errdisabled.

Usando o recurso de recuperação errdisable, podemos reduzir o impacto negativo de portas errdisabled e acelerar a recuperação de rede. No entanto, observe que esse recurso também é apenas temporário, pois a porta pode reverter para errdisabled se a condição de erro persistir ou se repetir. Portanto, esse recurso deve ser usado como uma solução de emergência, não como uma solução permanente.

Como evitar portas errdisabled usando os recursos Errdisable Detect e Errdisable Flap

Além de reativar as portas errdisabled, também podemos impedir portas errdisabled usando os recursos errdisable detect e errdisable flap no switch. Esses recursos nos ajudarão a identificar e isolar portas que têm o potencial de causar erros, reduzindo assim o risco de portas erradas.

Como evitar portas errdisabled usando o recurso Errdisable Detect

O recurso errdisable detect é um recurso que detectará condições de erro que podem fazer com que a porta se torne errdisabled e nos avise. Esse recurso pode nos ajudar a descobrir quais portas são problemáticas e o que as causa, para que possamos tomar precauções antes que elas se tornem errantes.

Para habilitar o recurso errdisable detect, devemos usar o comando errdisable detect cause no modo de configuração global. Esse comando determinará quais condições de erro esse recurso pode detectar. Veja a seguir um exemplo de como usar esse comando:

Switch# configure terminal
Switch(config)# errdisable detect cause link-flap
Switch(config)# errdisable detect cause bpduguard
Switch(config)# errdisable detect cause psecure-violation
Switch(config)# errdisable detect cause udld
Switch(config)# errdisable detect cause channel-misconfig
Switch(config)# end

O comando acima habilitará a detecção errdisable para cinco das condições de erro mais comuns, ou seja, troca de link, violação de STP, violação de segurança de porta, violação de UDLD e configuração incorreta de EtherChannel.

Depois que o recurso errdisable detect estiver habilitado, o switch enviará uma mensagem de aviso para o console ou syslog se alguma porta encontrar a condição de erro especificada. Veja a seguir um exemplo de uma mensagem de aviso gerada por esse recurso:

%PM-4-ERR_DISABLE: link-flap error detected on Gi1/0/1, putting Gi1/0/1 in err-disable state
%PM-4-ERR_DISABLE: bpduguard error detected on Gi1/0/2, putting Gi1/0/2 in err-disable state
%PM-4-ERR_DISABLE: psecure-violation error detected on Gi1/0/3, putting Gi1/0/3 in err-disable state
%PM-4-ERR_DISABLE: udld error detected on Gi1/0/4, putting Gi1/0/4 in err-disable state
%PM-4-ERR_DISABLE: channel-misconfig (STP) error detected on Gi1/0/5, putting Gi1/0/5 in err-disable state

Usando o recurso errdisable detect, podemos descobrir quais portas têm o potencial de causar erros e tomar precauções antes que elas se tornem errdisabled.

Como evitar portas errdisabled usando o recurso Errdisable Flap

O recurso errdisable flap é um recurso que isolará portas que se tornam errdisabled repetidamente devido às mesmas condições de erro. Esse recurso pode nos ajudar a evitar interferências de rede causadas por portas instáveis e reduzir a carga de switches na reativação de portas com erros desativados.

Para habilitar o recurso errdisable flap, devemos usar o comando errdisable flap setting no modo de configuração global. Esse comando determina o número máximo de portas errdisabled que podem ser manipuladas por um switch ao mesmo tempo e o intervalo de tempo em segundos entre duas portas que são as mesmas errdisabled. Veja a seguir um exemplo de como usar esse comando:

Switch# configure terminal
Switch(config)# errdisable flap setting 10 60
Switch(config)# end

O comando acima habilitará o recurso errdisable flap definindo o número máximo de portas errdisabled que um switch pode manipular em 10 e o intervalo de tempo entre duas portas que são errdisabled iguais em 60 segundos.

Depois que o recurso errdisable flap estiver habilitado, o switch isolará as portas que se tornam errdisabled repetidamente devido às mesmas condições de erro no intervalo de tempo especificado. As portas isoladas não serão reativadas pelo switch, mesmo se o recurso de recuperação errdisable estiver habilitado. As portas isoladas só podem ser reativadas manualmente usando os comandos shutdown e no shutdown. Veja a seguir um exemplo de uma mensagem gerada por esse recurso:

%PM-4-ERR_RECOVER: Attempting to recover from link-flap err-disable state on Gi1/0/1
%PM-4-ERR_DISABLE: link-flap error detected on
%PM-4-ERR_DISABLE: link-flap error detected on Gi1/0/1, putting Gi1/0/1 in err-disable state
%PM-4-ERR_DISABLE: Too many link-flap error detected on Gi1/0/1, putting Gi1/0/1 in permanent err-disable state

A partir da mensagem acima, podemos ver que a porta Gi1/0/1 ficou errada devido à oscilação de link e, em seguida, isolada pelo switch devido a muita oscilação de link ocorrendo dentro de 60 segundos.

Usando o recurso errdisable flap, podemos evitar a interferência de rede causada por portas instáveis e reduzir a carga de switches na reativação de portas errdisabled.

Como monitorar o status de uma porta Errdisabled usando os comandos Show Interfaces Err-disabled Status e Show Errdisable Recovery

Além de endereçar e impedir portas errdisabled, também podemos monitorar o status de portas errdisabled usando o comando show interfaces status err-disabled e show errdisable recovery no switch. Esses comandos exibirão informações sobre a porta que está errdisabled e o recurso de recuperação errdisable que está sendo executado no switch.

Como monitorar o status de uma porta desabilitada por erro usando o comando Mostrar Interfaces Err-disabled Status

O comando show interfaces status err-disabled é um comando que exibirá uma lista de portas que estão com erro desabilitado e o motivo pelo qual essas portas estão desabilitadas. Este comando pode nos ajudar a descobrir quais portas são problemáticas e o que as causa para que possamos tomar medidas corretivas ou preventivas. Veja a seguir um exemplo de saída desse comando:

Switch# show interfaces status err-disabled
Port      Name               Status       Reason
Gi1/0/1                      err-disabled link-flap
Gi1/0/2                      err-disabled bpduguard
Gi1/0/3                      err-disabled psecure-violation
Gi1/0/4                      err-disabled udld
Gi1/0/5                      err-disabled channel-misconfig

A partir da saída acima, podemos ver que a porta Gi1/0/1 torna-se errdisabled devido à oscilação de link, a porta Gi1/0/2 torna-se errdisabled devido à violação de STP, a porta Gi1/0/3 torna-se errdisabled devido à violação de Port Security, a porta Gi1/0/4 torna-se errdisabled devido à violação UDLD e a porta Gi1/0/5 torna-se errdisabled devido à configuração incorreta do EtherChannel.

Como monitorar o status de uma porta Errdisabled usando o comando show errdisable Recovery

O comando show errdisable recovery é um comando que exibirá informações sobre o recurso de recuperação errdisable em execução no switch. Esse comando pode nos ajudar a descobrir quais condições de erro esse recurso pode manipular, o tempo de espera antes que o switch reative a porta errdisabled e o status de recuperação da porta errdisabled. Veja a seguir um exemplo de saída desse comando:

Switch# show errdisable recovery
ErrDisable Reason            Timer Status
-----------------            --------------
link-flap                    Enabled
bpduguard                    Enabled
psecure-violation            Enabled
udld                         Enabled
channel-misconfig            Enabled

Timer interval: 300 seconds

Interfaces that will be enabled at the next timeout:

Interface       Errdisable reason      Time left(sec)
---------       -----------------      --------------
Gi1/0/1         link-flap              120
Gi1/0/2         bpduguard              180
Gi1/0/3         psecure-violation      240
Gi1/0/4         udld                   300
Gi1/0/5         channel-misconfig      300

Na saída acima, podemos ver que o recurso de recuperação errdisable está habilitado para as cinco condições de erro mais comuns, ou seja, troca de link, violação de STP, violação de segurança de porta, violação de UDLD e configuração incorreta de EtherChannel. Além disso, também podemos ver que o tempo de espera antes que o switch reative a porta errdisabled é de 300 segundos e o status de recuperação da porta errdisabled, incluindo o tempo restante antes que a porta seja reativada.

Usando os comandos acima, podemos monitorar o status da porta errdisabled e o recurso de recuperação errdisable em execução no switch.

Conclusão

Uma porta errdisabled é uma porta que foi desativada pelo switch Cisco porque uma condição de erro é detectada. As portas com erros podem causar interferência grave na rede, especialmente se estiverem conectadas a dispositivos críticos, como servidores, roteadores ou dispositivos finais. Portanto, é importante saber como lidar com portas erráticas e evitar que elas aconteçam no futuro.

Ao entender e aplicar os conceitos que aprendemos, podemos gerenciar melhor as portas errdisabled e melhorar o desempenho e a confiabilidade de nossa rede.

Últimos artigos