Troubleshooting en switches Cisco

CiscoLos comandos show ip interface brief y show interfaces son indispensables a la hora de hacer troubleshooting en switches Cisco. El primero nos muestra una visión general del estado de todas las interfaces del Switch mientras que el segundo se centra en detallar el estado de cada interfaz. Ambos comandos están disponibles en user EXEC mode, no es necesario acceder al Privileged EXEC Mode mediante enable.

Show ip interface brief

A continuación tenemos un ejemplo de la salida del comando show ip interface brief. He eliminado algunas interfaces entre medio para una visión más amigable:

Switch>show ip interface brief
Interface IP-Address OK? Method Status Protocol

FastEthernet0/1 unassigned YES manual up up
FastEthernet0/2 unassigned YES manual down down
FastEthernet0/3 unassigned YES manual down down
FastEthernet0/4 unassigned YES manual down down
FastEthernet0/5 unassigned YES manual down down
FastEthernet0/6 unassigned YES manual down down
FastEthernet0/7 unassigned YES manual down down
FastEthernet0/8 unassigned YES manual down down
FastEthernet0/9 unassigned YES manual down down
FastEthernet0/10 unassigned YES manual down down
FastEthernet0/11 unassigned YES manual down down
FastEthernet0/12 unassigned YES manual down down
...
...
FastEthernet0/24 unassigned YES manual down down

Vlan1 10.0.0.100 YES manual up up

Como podéis observar, tenemos una visión general del estado de cada una de las interfaces del switch en capa 2 (data link) y capa 3 (network layer) en las que podemos ver el nombre de la interfaz, si cuenta con una IP configurada, el método de configuración (manual) y el estado a nivel de capa 1 (status) y de protocolo (capa 2): ver Cisco IOS Interface Status Codes.

Show interfaces

Por otro lado, si queremos ver al detalle el estado de todas o una de las interfaces podemos usar el comando show interfaces (tal cual para ver todas las interfaces) o filtrando por interfaz show interfaces <interfaz>:

Switch>show interfaces ?
  Ethernet         IEEE 802.3
  FastEthernet     FastEthernet IEEE 802.3
  GigabitEthernet  GigabitEthernet IEEE 802.3z
  Vlan             Catalyst Vlans
  etherchannel     Show interface etherchannel information
  switchport       Show interface switchport information
  trunk            Show interface trunk information

Vamos a ver por ejemplo el estado de la interfaz FastEthernet0/1:

Switch>show interfaces fastEthernet 0/1
FastEthernet0/1 is up, line protocol is up (connected)
  Hardware is Lance, address is 000d.bde6.7801 (bia 000d.bde6.7801)
 BW 100000 Kbit, DLY 1000 usec,
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation ARPA, loopback not set
  Keepalive set (10 sec)
  Full-duplex, 100Mb/s
  input flow-control is off, output flow-control is off
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 00:00:08, output 00:00:05, output hang never
  Last clearing of "show interface" counters never
  Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
  Queueing strategy: fifo
  Output queue :0/40 (size/max)
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
     956 packets input, 193351 bytes, 0 no buffer
     Received 956 broadcasts, 0 runts, 0 giants, 0 throttles
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
     0 watchdog, 0 multicast, 0 pause input
     0 input packets with dribble condition detected
     2357 packets output, 263570 bytes, 0 underruns
     0 output errors, 0 collisions, 10 interface resets
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier
     0 output buffer failures, 0 output buffers swapped out

Sí… es muchísima información, vamos a ir filtrando para que entendáis cada punto. En primera instancia tenemos los IOS Interface Status Codes, como en el artículo que enlazo hay mucha información sobre ello no nos vamos a explayar, podéis pinchar para más información.

FastEthernet0/1 is up, line protocol is up (connected)

Después tenemos la dirección MAC de la interfaz y el tipo de Hardware de la misma (lo normal sería Hardware is Fast Ethernet, pero es un switch virtual):

  Hardware is Lance, address is 000d.bde6.7801 (bia 000d.bde6.7801)

También tenemos información de capa 3 como por ejemplo el ancho de banda en kbits y el delay configurado en la interfaz. Normalmente también aparecería la MTU (Maximum Transfer Unit) que en este caso hemos visto que no aparecía(lo pongo para que lo veáis). El comando bandwidth se utiliza para especificar la velocidad de la interfaz a nivel administrativo, es decir, es meramente informativo para protocolos de enrutamiento que necesiten saber la velocidad de la interfaz. El parámetro delay (en milisegundos) también es administrativo y es una métrica asignada a la interfaz y que también se usa para protocolos de enrutamiento (IGRP y EIGRP):

MTU 1500, BW 100000 Kbit, DLY 1000 usec,

La siguiente línea nos muestra información interesante. El parámetro reliability nos muestra la fiabilidad de la interface en un rango de 1 a 255. 255 es 100% fiable/disponible mientras que un valor más bajo nos indicaría que está habiendo errores/desconexiones en la interfaz. Los siguientes valores nos indican el nivel de tráfico/carga de salida/envío (tx) y de entrada/recepción (rx) que tiene la interfaz, también de 1 a 255, a mayor número más tráfico. Nuestra interfaz no tiene nada de tráfico así que tiene un valor de 1:

     reliability 255/255, txload 1/255, rxload 1/255

Los siguientes tres parámetros son importantes, en capa 2 sobre todo el tercero:

  Encapsulation ARPA, loopback not set
  Keepalive set (10 sec)
  Full-duplex, 100Mb/s

Vemos que el tipo de encapsulación usado es ARPA (Ethernet Version II), si ejecutaramos el comando show interfaces en un router veríamos otro tipo de protocolos de encapsulación como HDLC, PPP, etc. El parámetro keepalive, como su propio nombre indica especifica la frecuencia de tiempo para verificar si la propia interfaz como el otro extremo están OK. La siguiente línea nos ayudará a detectar problemas de configuración en la negociación de velocidad y duplex en ambos extremos del switch: si la interfaz está funcionando en full-duplex o half-duplex y si está trabajando a 10Mbits, 100Mbits, 1Gbits, etc. Los valores deben ser los mismos en ambos extremos de la conexión.

Las siguientes líneas especifican si hay establecida alguna configuración de flow-control en la interfaz e información extra sobre timeouts de ARP:

  input flow-control is off, output flow-control is off
  ARP type: ARPA, ARP Timeout 04:00:00

Last input y Last output especifican el tiempo desde la última vez que se envió y recibió una trama en la interfaz, muy útil para saber si la misma está recibiendo tráfico y desde cuando está fallando:

  Last input 00:00:08, output 00:00:05, output hang never

Los valores recogidos en Input Queueing, Output Queueing y Drops nos oprecen una visión de los paquetes que hay en las colas de salida y entrada de la interfaz especificando el tamaño de la cola, su tamaño máximo y los paquetes que han sido descartados/dropped debido a una cola llena:

  Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
  Queueing strategy: fifo
  Output queue :0/40 (size/max)

Las siguientes dos líneas están claras, estadísticas con un periodo de 5 minutos del tráfico de la interfaz (entrada y salida). El resultado que visualizamos es la media del número de bits y paquetes transmitidos por segundo durante los últimos cinco minutos:

  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec

La sección final, compuesta de una buena cantidad de valores nos muestra estadísticas e históricos de la interfaz:

     956 packets input, 193351 bytes, 0 no buffer
     Received 956 broadcasts, 0 runts, 0 giants, 0 throttles
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
     0 watchdog, 0 multicast, 0 pause input
     0 input packets with dribble condition detected
     2357 packets output, 263570 bytes, 0 underruns
     0 output errors, 0 collisions, 10 interface resets
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier
     0 output buffer failures, 0 output buffers swapped out

Podemos destacar lo siguiente, separado claramente en dos secciones, INPUT y OUTPUT:

  • Packets Input: total de paquetes entrantes sin errores
  • Bytes: total de bytes sin errores recibidos
  • no buffer: este valor es importante cara al troubleshooting, ya que nos indica el número de paquetes que no han podido ser procesados debido a que el  buffer del sistema estaba lleno. Este valor está íntimamente relacionado con el valor ignored, el cual indica el número de paquetes ignorados porque el buffer estaba con valores muy bajos. Un valor alto en ambos significa puede ser indicativo de una Broadcast Storm o problemas de ruido en Serial Lines.
  • Received Broadcasts: si la interfaz no tiene tráfico, es normal que el valor sea mucho mayor que el de paquetes entrantes y bytes aunque en interfaces de producción  no debería ser lo habitual (desconozco el porcentaje pero podría ser quizás el 10% del tráfico total?) indica tráfico broadcast y multicast
  • Runts: paquetes ignorados porque no tenían el tamaño mínimo exigido (en Ethernet menos de 64 bytes)
  • Giants: todo lo contrario a Runts, paquetes que exceden el tamaño máximo exigido MTU (por defecto 1518 bytes)
  • Input errors: contador de errores que incluye runts, giants, no buffer, CRC, frame, overrun, e ignored counts.
  • CRC: sus valores aumentan cuando el checksum (cyclic redundancy checksum) generado en el otro extremo no coincide con el calculado cuando se reciben los datos. Valores altos pueden ser originados por colisiones, transmisión de datos corruptos o ruido en las comunicaciones.
  • Frame: muestra el número de paquetes recibidos con errores CRC y con un número de octetos no entero. Esto es sinónimo de colisiones o un dispositivo Ethernet funcionando de forma incorrecta.
  • Overrun: muestra el número de veces en las que el dispositivo no pudo manejar los datos entrantes por que se excedió la capacidad del buffer de datos.
  • Ignored: lo que comentabamos antes en el valor no buffer, paquetes ignorados por que los buffers internos se quedaban sin espacio. Un valor alto en ambos significa puede ser indicativo de una Broadcast Storm o problemas de ruido.
  • Input packets with dribble condition detected: este contador es meramente informativo, indica cuando una trama recibida era demasiado grande. La trama se acepta igualmente.
  • Packets Output: comienza la sección de tráfico saliente. Este valor muestra el número total de paquetes enviados por la interfaz.
  • Bytes: total de bytes enviados por la interfaz.
  • Output Errors: muestra un contador de todos los errores de salida.
  • Collisions: número de colisiones Ethernet, normalmente provocadas por fallos de negociación (duplex mismatch).
  • Interface resets: número de veces que la interfaz ha sido reiniciada.
  • Late collisions: colisiones Ethernet provocadas (normalmente) por cables demasiado largos.

En principio esto sería lo más importante a reseñar de ambos comandos, espero que la guía os haya sido de utilidad.

3 comentarios en “Troubleshooting en switches Cisco

  1. Esta muy bueno tu detalle de estos comandos, era justo lo que estaba buscando, sin embargo me quedó una duda con campo ,Packets Output,; este muestra el tráfico que está pasando por la interfaz en ese instante o es un tráfico acumulado? bueno de igual forma esta muy bueno tu material, saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *