Detección de problemas de red en Citrix XenServer
Hola, buenos días apreciados lectores, soy Ferran Serafini y como cada miércoles os voy hablar sobre XenServer, hoy veremos cómo analizar problemas de red con las utilidades básicas que nos trae la “userland” GNU/Linux que se incluyen en nuestros XenServer.
Cada administrador de sistemas tiene sus trucos, estrategias, etc, yo os voy a proponer una más, que uso en mi día a día cuando hay problemas de red. Mi forma, que supongo que muchos también la usáis, es por eliminación de las 3 primeras capas del modelo OSI.
Capa de Hardware físico:
Consiste en determinar que nuestro problema no se encuentra a bajo nivel, por ejemplo que este fallando un interface de red. Para ello vamos a usar ethtool. Esta herramienta nos va proporcionar información sobre el estado de un interface:
# ethtool eth1
Settings for eth1:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
2500baseX/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 1000baseT/Full
2500baseX/Full
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 1000Mb/s
Duplex: Full
Port: FIBRE
PHYAD: 2
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: g
Link detected: yes
Capa de enlace, nivel 2 (sin routing)
Hemos determinado que tenemos “link” en ambos extremos, ahora nos interesa ver un nivel de red más arriba y ver si hay problemas en la capa 2 de red. Aquí podemos utilizar por ejemplo, ping entre hosts de la misma red o bien el comando ip neig, que nos va a informar de cómo ve un host mediante su tabla ARP.
ip neig show <ip>
# ip neig show 192.168.227.66
192.168.227.66 dev xapi3 lladdr 00:60:16:33:f1:72 REACHABLE
Podemos juntarlo con el comando watch para tener una “especie” de top con la salida de ip
watch -n 1 ip neig show <ip>
Capa de red 3
Si no hemos encontrado problemas en las dos capas anteriores, vamos a ver que no tengamos problemas de routing en nuestra red. Para ello tenemos el archifamoso traceroute.
traceroute -In <ip>
Capas superiores
Cuando vemos que tampoco tenemos problemas a nivel de routing, quiere decir que el problema lo tenemos en capas superiores, lo más efectivo es esnifar el tráfico de red del interfaz que hemos visto que tenemos problemas. Tener una traza de red también nos mostrará si hay problemas en los niveles de red anteriores.
Para ello usamos tcpdump que nos va generar un fichero pcap que luego podremos abrir y ver en detalle con Wireshark
# tcpdump -w test.pcap -i eth0
Con scp nos pasamos el fichero test.pcap
scp root@xenserver:test.pcap .
y lo abrimos con wireshark
wireshark test.pcap
Evidentemente, los problemas de red son algo a veces muy difícil de “debugar” en función del entorno de virtualización, redes, etc que hay en un datacenter, pero espero haber podido darte una pequeña guía, para ayudarte en tu día a día con XenServer. Saludos
Si te ha gustado este articulo, por favor,compártelo en Twitter o en Facebook con los botones de abajo o deja tus comentarios. Muchas gracias por tu apoyo!