Las redes de computadoras (y las inalámbricas en particular) son invenciones increíblemente entretenidas y útiles. Excepto, por supuesto, cuando no funcionan. Sus usuarios se pueden quejar de que la red es “lenta” o “no funciona” ¿pero qué significa esto realmente? Sin comprender qué es lo que realmente está pasando, administrar una red puede ser muy frustrante.
Para ser un administrador de red efectivo, necesita tener acceso a herramientas que le muestren exactamente qué es lo que está sucediendo en su red. Existen varias clases diferentes de herramientas de monitoreo. Cada una le muestra un aspecto diferente de lo que “está pasando”, desde la interacción física del radio a las formas en que las aplicaciones de los usuarios interactúan entre ellas. Al observar el desempeño de la red a través del tiempo se puede tener una idea de lo que es “normal” para ella, y ser notificado automáticamente cuando las cosas están fuera de orden. Las herramientas que presentamos en esta sección son bastante poderosas, y se pueden descargar gratuitamente de las fuentes listadas.
Las herramientas de monitoreo comunes, simplemente proveen una lista de redes disponibles con información básica (tales como intensidad de la señal y canal). Le permiten detectar rápidamente redes cercanas y determinar si están dentro de su alcance o si están causando interferencia.
Los analizadores de protocolos de redes una gran cantidad de detalles de la información que fluye por una red, permitiendo inspeccionar paquetes individualmente. Para las redes cableadas, pueden inspeccionar paquetes en la capa de enlace de datos o en una superior. Para el caso de las redes inalámbricas, se puede inspeccionar información hasta las tramas 802.11. Aquí hay varios analizadores de protocolos de redes populares (y gratuitas):
Como es un monitor pasivo de la red también puede detectar redes inalámbricas “cerradas”, analizando el tráfico enviado por los clientes. Se puede instalar Kismet en varias computadoras al mismo tiempo, y hacer que todas reporten a través de la red a una misma interfaz de usuario. Esto permite realizar un monitoreo inalámbrico sobre grandes áreas, tales como un campus universitario o corporativo. Como utiliza el modo de monitoreo pasivo, hace todo esto sin transmitir ningún dato.
La red está lenta. ¿Quién está acaparando todo el ancho de banda? Utilizando una buena herramienta de monitoreo, puede determinar fácilmente la fuente que inunda su red de correo no deseado y de virus. Dichas herramientas también lo pueden ayudar a planificar los incrementos de capacidad requeridos para mantener los usuarios satisfechos. Al mismo tiempo le dan una representación visual de cómo fluye el tráfico en la red, incluyendo el que proviene de una computadora o servicio en particular.
del tiempo.
Mac OS X, y Windows.
¿Qué hace cuando la red se daña? Si no puede acceder a una página web o a un servidor de correo electrónico, y el problema no se soluciona presionando el botón de “actualizar”, ustedes hace necesario aislar la ubicación exacta del problema. Estas herramientas lo van a ayudar a determinar dónde se encuentra exactamente un problema de la conexión.
Saber qué contactar es tan importante como saber cómo hacerlo. Si usted no puede conectarse a un servicio en su navegador web (por ejemplo, http://yahoo.com/), puede intentar contactarlo:
$ ping yahoo.com PING yahoo.com (66.94.234.13): 56 data bytes 64 bytes from 66.94.234.13: icmp_seq=0 ttl=57 time=29.375 ms 64 bytes from 66.94.234.13: icmp_seq=1 ttl=56 time=35.467 ms 64 bytes from 66.94.234.13: icmp_seq=2 ttl=56 time=34.158 ms ^C --- yahoo.com ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max/stddev = 29.375/33.000/35.467/2.618 ms
Presione control-C cuando haya terminado de colectar datos. Si los paquetes se toman mucho tiempo en regresar, puede haber una congestión en la red. Si el retorno de los paquetes de contacto tiene un ttl inusualmente bajo, puede que haya problemas de enrutamiento entre su computadora y el extremo remoto. ¿Pero qué sucede si el contacto no regresa ningún dato? Si está contactando un nombre en lugar de una dirección IP, puede que tenga problemas de DNS.
Intente contactar una dirección IP en Internet. Si no puede acceder a ella, es una buena idea observar si puede contactar su enrutador por omisión:
$ ping 216.231.38.1 PING 216.231.38.1 (216.231.38.1): 56 data bytes 64 bytes from 216.231.38.1: icmp_seq=0 ttl=126 time=12.991 ms 64 bytes from 216.231.38.1: icmp_seq=1 ttl=126 time=14.869 ms 64 bytes from 216.231.38.1: icmp_seq=2 ttl=126 time=13.897 ms ^C --- 216.231.38.1 ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max/stddev = 12.991/13.919/14.869/0.767 ms
Si no puede contactar a su enrutador por omisión, entonces lo más probable es que tampoco pueda acceder a Internet. Si tampoco puede contactar otras direcciones IP en su LAN local, es tiempo de verificar su conexión. Si está utilizando cable Ethernet, ¿está enchufado? Si está utilizando una conexión inalámbrica, ¿esta usted conectado a la red correcta, y está la red dentro de su alcance?
El diagnóstico de problemas de la red con ping es casi un arte, pero es muy útil. Ya que probablemente usted va a encontrar ping en casi cualquier computadora con la que trabaje, es una buena idea aprender cómo usarlo apropiadamente.
$ traceroute -n google.com traceroute to google.com (72.14.207.99), 64 hops max, 40 byte packets 1 10.15.6.1 4.322 ms 1.763 ms 1.731 ms 2 216.231.38.1 36.187 ms 14.648 ms 13.561 ms 3 69.17.83.233 14.197 ms 13.256 ms 13.267 ms 4 69.17.83.150 32.478 ms 29.545 ms 27.494 ms 5 198.32.176.31 40.788 ms 28.160 ms 28.115 ms 6 66.249.94.14 28.601 ms 29.913 ms 28.811 ms 7 172.16.236.8 2328.809 ms 2528.944 ms 2428.719 ms 8 * * *
La opción -n le dice a traceroute que no se preocupe por resolver los nombres en el DNS, y hace que el programa corra más rápido. Usted puede ver que en el salto siete, el tiempo de recorrido de ida y vuelta se dispara a más de dos segundos, mientras que los paquetes parece que se desechan en el salto ocho. Esto puede indicar un problema en ese punto de la red. Si esta parte de la red está bajo su control, vale la pena comenzar sus esfuerzos para resolver el problema por allí.
My TraceRoute (mtr) es un programa que combina ping y traceroute en una sola herramienta. Corriendo mtr, puede obtener un promedio de la latencia y la pérdida de paquetes hacia un servidor en cierto lapso, en lugar de la visión instantánea que ofrecen ping y traceroute.
My traceroute [v0.69]
tesla.rob.swn (0.0.0.0) (tos=0x0 psize=64 bitpatSun Jan 8 20:01:26 2006
Keys: Help Display mode Restart statistics Order of fields quit
Packets Pings
Host Loss% Snt Last Avg Best Wrst StDev
1. gremlin.rob.swn 0.0% 4 1.9 2.0 1.7 2.6 0.4
2. er1.sea1.speakeasy.net 0.0% 4 15.5 14.0 12.7 15.5 1.3
3. 220.ge-0-1-0.cr2.sea1.speakeasy. 0.0% 4 11.0 11.7 10.7 14.0 1.6
4. fe-0-3-0.cr2.sfo1.speakeasy.net 0.0% 4 36.0 34.7 28.7 38.1 4.1
5. bas1-m.pao.yahoo.com 0.0% 4 27.9 29.6 27.9 33.0 2.4
6. so-1-1-0.pat1.dce.yahoo.com 0.0% 4 89.7 91.0 89.7 93.0 1.4
7. ae1.p400.msr1.dcn.yahoo.com 0.0% 4 91.2 93.1 90.8 99.2 4.1
8. ge5-2.bas1-m.dcn.yahoo.com 0.0% 4 89.3 91.0 89.3 93.4 1.9
Los datos van a ser actualizados y promediados continuamente. Al igual que con ping, cuando haya terminado de observar los datos debe presionar control-C. Tenga en cuenta que para usar mtr debe tener privilegios de administrador (root).
Si bien estas herramientas no van a revelar exactamente qué es lo que está funcionando mal en una red, pueden darle información suficiente para saber por dónde continuar en la resolución de problemas.
¿Cuán rápido puede funcionar la red? ¿Cuál es la capacidad real utilizable en un enlace específico de la red? Puede obtener una muy buena estimación de su capacidad de rendimiento inundando el enlace con tráfico y midiendo cuánto demora en transferir los datos. Aunque existen páginas web que pueden hacer una “prueba de velocidad” en su navegador (como http://www.dslreports.com/stest), esas pruebas son altamente inexactas si usted está lejos de la fuente de prueba. Aún peor, no le permiten medir la velocidad de un enlace en particular, sino solamente la velocidad de su enlace a Internet. Le presentamos dos herramientas que le van a permitir realizar una prueba de rendimiento en su propia red.
node_a$ ttcp -r -s node_b$ ttcp -t -s node_a ttcp-t: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp -> node_a ttcp-t: socket ttcp-t: connect ttcp-t: 16777216 bytes in 249.14 real seconds = 65.76 KB/sec +++ ttcp-t: 2048 I/O calls, msec/call = 124.57, calls/sec = 8.22 ttcp-t: 0.0user 0.2sys 4:09real 0% 0i+0d 0maxrss 0+0pf 7533+0csw
Después de recolectar los datos en una dirección, debe invertir el par de transmisión y recepción para probar el enlace en la otra dirección. Puede probar flujos UDP así como TCP, alterar varios parámetros TCP y el largo de la memoria intermedia (buffer) para probar la red bajo fuertes exigencias. Además, el usuario puede especificar los datos a enviar en la prueba, en lugar de enviar datos generados aleatoriamente. Recuerde que la velocidad de lectura está en kilobytes, no en kilobits. Multiplique el resultado por 8 para encontrar la velocidad en kilobits por segundo.
La única desventaja real de ttcp, es que hace años que no ha sido actualizado. Afortunadamente, el código es de dominio público y está disponible gratuitamente. Al igual que ping y traceroute, ttcp es una herramienta estándar en muchos sistemas.
node_a$ iperf -s node_b$ iperf -c node_a ------------------------------------------------------------ Client connecting to node_a, TCP port 5001 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [ 5] local 10.15.6.1 port 1212 connected with 10.15.6.23 port 5001 [ ID] Interval Transfer Bandwidth [ 5] 0.0-11.3 sec 768 KBytes 558 Kbits/sec
El lado del servidor continuará escuchando y aceptando conexiones del cliente en el puerto 5001 hasta que usted presione control-C para detenerlo. Esto puede ser útil si corremos varias tandas de pruebas desde diferentes lugares.
La mayor diferencia entre ttcp e iperf es que iperf está siendo desarrollado activamente, y tiene muchas características nuevas (incluyendo soporte IPv6). Esto lo hace una buena elección cuando construimos redes nuevas.
Siguiendo la información a través del tiempo, usted puede tener una idea general de la salud de la red y sus servicios. Estas herramientas muestran las tendencias de su red y pueden incluso notificar a las personas cuando se presenten problemas. Muy a menudo, los sistemas van a notar el problema aún antes de que una persona llame solicitando soporte técnico.
Aunque Nagios ciertamente ayuda a un único administrador a monitorear una red grande, sus funciones se destacan cuando usted tiene personal de soporte, con responsabilidades divididas entre varios de sus miembros. La detección de problemas puede ser configurada para ignorar problemas pasajeros, y sólo cuando se amerite enviar las notificaciones únicamente a las personas responsables de solucionarlos. Si el problema sigue por un período de tiempo predeterminado sin ser atendido, se puede notificar adicionalmente a otras personas. Esto permite que los problemas temporales sean simplemente registrados sin molestar al personal, y que sólo los problemas reales tengan que ser atendidos por el equipo.