Lab. 1 - Entorno del laboratorio Lab 1. - Entorno del laboratorio En aquest capítol introductori hi ha una descripció general de la configuració de l’entorn que es farà servir per fer les pràctiques de laboratori. Al botar el PC hi ha que seleccionar la imatge “xarxes”. Aquesta imatge s’ha confeccionat a partir de la distribució de Linux de mida reduïda anomenada slitaz (http://www.slitaz.org). 1.1. Configuració bàsica Para acceder: Usuari i password: xc / xc Superusuari: root / +root El funcionament habitual és obrir la sessió com a usuari “xc” i en la consola canviar a root si ho necessiten. Els icones de les aplicacions que es faran servir habitualment estan a la part de sota de l'escriptori: Aquestes són, per ordre des de l’esquerra: menú desplegable, consola, navegador web (midori), editor, wireshark, calculadora, navegador del sistema de fitxers. Per configurar el PC per DHCP cal executar la següent comanda com a superusuari. Això és necessari per poder accedir al servidor pclabxc per fer els minicontrols. xarxes# udhcpc -i e0 1.2. Interfícies dels PCs Per a fer les pràctiques de xarxes utilitzareu els següents ports de comunicacions dels PCs (vegeu la Figura 1): • ttyS0 (COM1 en windows): Aquí hi connectareu la consola per poder configurar els routers i commutadors CISCO. • e0, e1, e2: son tres targes Ethernet en les posicions que indica la Figura 1. ttyS0 e0 e1 e2 Figura 1: Ports de comunicació dels PCs del laboratori que farem servir en les pràctiques. 5 Lab. 1 - Entorno del laboratorio 1.3. Quagga GNU Quagga es un software de libre distribución que gestiona protocolos de encaminamiento TCP/IP (RIPv1v2, OSPFv2, BGPv4). El diseño de quagga está basado en modularidad y ejecuta un proceso para cada protocolo de encaminamiento (daemon). Cada daemon (ripd, ospfd, bgpd, zebra) tiene su propio fichero de configuración y su interfaz de configuración de terminal. Eso significa que cuando configuras direcciones IP, rutas estáticas, etc tienes que acceder al daemon zebra, cuando configuras comandos de RIP tienes que acceder al daemon de ripd, etc. Quagga emula los comandos de CISCO IOS para protocolos de encaminamiento, de forma que quitando algunas pequeñas diferencias, para configurar OSPF o RIP o BGP se ejecutan los mismos comandos que el IOS de CISCO. De esta forma, cada PC linux se convierte en un PC router con encaminamiento controlado con comandos similares al IOS. Para lanzar Quagga, si no estuviera ya ejecuntandose (hay que usar el superuser): xarxes% /etc/init.d/quagga start Luego hay que comprobar si los daemos están ejecutándose. Para ello ejecutar en Linux el comando: xarxes% ps –fe | grep {zebra,ospfd,bgpd,ripd} En el caso de que no estén ejecutándose los daemons: xarxes% /usr/sbin/{zebra,ospfd,bgpd,ripd} –u root –d Para configurar direcciones IP, rutas estáticas, visualizar tablas de encaminamiento, etc hay que abrir un xterm y ejecutar un telnet al puerto zebra (puerto 2601): xarxes% telnet localhost zebra xarxes% password: zebra zebra> enable zebra> password: zebra zebra# zebra# show ip route --> para ver la tabla de encaminamiento zebra# configure terminal --> para pasar a configuración En el caso de que queramos usar OSPF y configurar commandos de OSPF hay que ejecutar el daemon correspondiente: xarxes% telnet localhost ospfd xarxes% password: zebra zebra> enable zebra# zebra# configure terminal à para pasar a configuración de este daemon Idem para BGP. Zebra no se comporta exactamente igual a IOS CISCO. Las variaciones son mínimas. Para ver las diferencias consultar el manual de quagga con los comandos OSPF. En el Anexo A hay los principales comandos usados por Quagga y que se usarán en el Lab. Para más información, consultar la página web de quagga http://www.quagga.net/ o en la wiki https://wiki.quagga.net/wiki/index.php/Main_Page. 1.4. Realización de la práctica de entorno del laboratorio Como práctica de repaso se va a configurar una red con encaminamiento dinamico RIP. Todos los dispositivos de la red son PC con linux. Para los que están dibujados como routers se usará zebra para emular routers CISCO. 1.4.1. Configuración de interfaces linux Ejemplo de asignación de una dirección IP. ifconfig Interface @IP netmask mask broadcast broadcast Ejemplos de configuración de una ruta. route [add|del] –host IP-host gw IP-gateway route [add|del] –net IP-network netmask mask gw IP-gateway route [add|del] default gw IP-gateway 1.4.2. Configuración de routers Para la configuración de las IP en las interfaces del router, se accede al daemon zebra como explicado anteriormente. Ejemplo de asignación de una dirección IP en router Quagga. zebra# configure terminal zebra(config)# interface ethernet0 zebra(config-if)# ip address 10.0.0.10/241 zebra(config-if)# no shutdown 1 En el caso de CISCO IOS, el comando es diferente. La mascara en lugar de ser en notación con barra (por ejemplo /24), en CISCO IOS se introduce en números decimales separados por punto (por ejemplo 255.255.255.0). 6 Lab. 1 - Entorno del laboratorio zebra(config-if)# exit zebra(config)# Para la configuración del RIP en el router, se accede al daemon ripd como explicado anteriormente. Ejemplo de activación de RIP en router CISCO. Recordad que hay que activar el RIP para todas las redes directamente conectada a un router. rip# configure terminal rip(config)# router rip rip(config-router)# network 10.0.0.0/24 rip(config-router)# network 10.0.1.0/24 rip(config-router)# etc... Según la versión de Quagga instalada en los PCs, puede que RIP use autentificación por defecto. Para que funcione sin problemas, hay que desactivar la autentificación en cada interfaz del router que use RIP. rip# configure terminal rip(config)# interface nombre-interfaz rip(config-if)# no ip rip authentication mode text Se recomienda para esta practica mantener dos xterm abiertos, cada uno con un telnet a un daemon distinto (zebra y ripd). Para verificar el estado de un router CISCO. zebra# show ip route zebra# show interfaces zebra# show running-config visualiza la tabla de encaminamiento visualiza el estado de todas las interfaces visualiza la configuración de todo el router Grupo 2 Grupo 1 PC1 0 R1 Grupo 3 200.0.<PC1>.0/24 10.0.<PC1>.0/24 PC2 10.0.0.0/24 0 R2 210.0.<PC1>.0/24 Figura 2: Red de la práctica 1. Montar y configurar la red de la Figura 2 usando Quagga. Cada grupo necesita 4 PCs, dos harán de router y dos de PCs. Los grupos se conectan entre sí a través del Hub. Seguir los siguientes pasos: 1. Configurar las interfaces del PC1 y PC2 y una ruta por defecto. 2. Lanzar el daemon zebra en los routers y configurar las interfaces de los routers. Verificar con ping la conectividad entre dos interfaces vecinas (router – router y router – PC). 3. Lanzar el daemon ripd en lor routers y activar el RIP. 4. Verificar en zebra que las tablas de encaminamiento en los routers son completas. Verificar con ping la conectividad entre los PCs. 5. Desconectar una de las interfaces de R1. Comprobar como actua RIP y verificar la conectividad entre los PCs. 6. Usar tcpdump (o wireshark) en los routers para verificar el contenido de los mensajes RIP entre routers. Probar a desactivar el Split Horizon (no ip split-horizon en una interfaz) en un router y compara el contenido de los mensajes. 7 Lab. 1 - Entorno del laboratorio 8