Gestion y Monitoreo de Redes Analisis Local de su Red Notas: ------ * Comandos que empiezan con un "$" implica que deberia ejecutar el comando como un usuario general - no como root. * Comandos que empiezan con un "#" implica que deberia trabajar como el usuario root. * Comandos con lineas mas especificas (como "GW-RTR>" o "mysql>") implica que esta ejecutando el comando en un equipo remoto o dentro otro programa. * Si una linea termina con un "\" esto indica que el comando sigue en la proxima linea y Ud. deberia tratar el comando si como fuera en una sola linea. Exercicios Parte I ---------------- 0. Haz un log in en su PC o abre una ventana de terminal como el usuario sysadmin. Analisis de la Red Localmente ----------------------------- 1. lsof y netstat ---------------- Vea que servicios estan corriendo en tu maquina. Puede usar la presentacion como referencia. O, utilizar "man lsof", "man netstat", "lsof -h" y "netstat -h" para ver todo las opciones disponible (hay muchos!). Recuerda usar "sudo" cuando usa lsof y netstat para darte los permisos necesarios para ver todo. * Usando lsof, que servicios de IPv4 estan escuchando en su maquina? * Usando netstat, que servicios de IPv4 y IPv6 estan escuchando en su maquina? 2. tcpdump y tshark ------------------ Para usar tcpdump necesita usar sudo, o sea root. Para usar wireshark necesita abrir un terminal y usar sudo como un usuario normal (ej: "sysadmin"). Se usa tcpdump como esto: $ sudo tcpdump -i lo -A -s1500 -w /tmp/tcpdump.log Ahora, genera algo de trafico en su interfaz de lo en otro terminal. Por ejemplo: $ ping localhost $ ssh localhost etc. Despues se apreta CTRL-C para terminar la sesion de tcpdump. Nota: ssh genera salida mucho mas "interesante". Ahora vamos a ver la salida de tcpdump usando wireshark y/o tshark (wireshark = grafico, tshark = en terminal con curses). $ sudo tshark -r /tmp/tcpdump.log o, si quieres $ sudo tshark -r /tmp/tcpdump.log | less Que vea? Puede seguir su sesion de SSH? Ahora intenta algo asi: $ sudo rm /tmp/tcpdump.log $ sudo tcpdump -i eth0 -A -s1500 -w /tmp/tcpdump.log En otro terminal haz: $ ftp limestone.uoregon.edu Connected to limestone.uoregon.edu. 220 FTP Server ready. Name (limestone.uoregon.edu:sysadmin): anonymous Password: ftp> exit Termina la sesion de tcpdump en otro terminal (CTRL-C). Ahora vea los contenidos de archivo de log: $ sudo tshark -r /tmp/tcpdump.log Puede ver su clave? Si tiene mucho trafico en su Red tal vez el archivo de tcpdump.log va a ser bastante grande. Puede buscar por su sesion de FTP usando el "Filter:" en wireshark, o en tshark simplemente buscando usando "/FTP". Vea si puede encontrar algo asi. "FTP Request: PASS PasswordYouTypedIn" Escuchando por claves no encifrados en los LANs inalambricos es muy facil con una herramienta como esto. 3. Usando iperf ------------ Usa "man iperf" o "iperf -h" por ayuda. Pide que tu vecino corre: $ iperf -s Conecta a la maquina de su vecino usando: $ iperf -c ipVecino Que rendimiento tiene entre tus maquinas? Puede considera conectando sus PCs directamente (un cable, no conmutador). No tiene que cambiar tu direccion de IP mientras que estan en el mismo grupo (Grupo 1 o Grupo 2) por el hecho que tiene el mismo rango de direccion de IP con el mismo Netmask. Verifica que puede hacer un ping entre sus maquinas. Ahora repite las pasos previos con su connecion nueva y directa. Ha mejorado su rendimiento? Porque? Si tiene tiempo sigue jugando con las opciones de iperf. Si tiene acceso a una maquina remoto corriendo UNIX o Linux puede instalar iperf ahi y hacer una prueba de coneccion entre la sala de este taller y su maquina remoto. Otras cosas para intentar... * Prueba TCP usando tamaños de ventanas diferentes (-2) * Verifica TCP MSS (-m). Como afecta esto a su rendimiento. Que es el "Path MTU Discovery" (Discubrimiento de MTU del Camino). * Prueba con dos procesos de iperf en paralelo (-P) y compara los totales. Hay diferencia? Porque? * Pruebe con diferente tamaños de paquetes y la opcion de TCP_NODELAY (-N).