Instalando Quagga En

Instalando Quagga en Ubuntu 25 mayo, 2007 in how-tos, linux, redes, ubuntu Quagga es un software libre de enrutamiento

Views 143 Downloads 1 File size 303KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Instalando Quagga en Ubuntu 25 mayo, 2007 in how-tos, linux, redes, ubuntu

Quagga es un software libre de enrutamiento avanzado. Proporciona todos los protocolos de encaminamiento (routing) basados en TCP/IP:

 

RIP v1/v2 (Routing Information Protocol)

 

BGP -4 y BGP -4+ (Border Gateway Protocol)

OSPF v2/v3 (Open Shortest Path First) IS/IS (Intermediate system-to-intermediate system)

Además de soportar ipv4, también soporta ipv6. Posee una arquitectura avanzada que le proporciona una gran calidad y potencia, con un motor multiservidor de encaminamiento. Quagga en un fork de GNU/Zebra.

Instalación de Quagga en Ubuntu Esta instalación ha sido probada en:

 

Ubuntu 6.06 Dapper Drake



Ubuntu 7.04 Feisty Fawn

Ubuntu 6.10 Edgy

Instalamos quagga usando apt. Primero entraremos en modo root para no estar haciendo sudo constantemente.

sudo -s apt-get install quagga Se instalarán los siguientes paquetes NUEVOS: quagga Preconfigurando paquetes …Seleccionando el paquete quagga previamente no seleccionado. (Leyendo la base de datos …100348 ficheros y directorios instalados actualmente.) Desempaquetando quagga (de …/quagga_0.99.6-2ubuntu3.1_i386.deb) … grep: /etc/quagga/*.conf: No existe el fichero ó directorio Configurando quagga (0.99.6-2ubuntu3.1) … Loading capability module if not yet done. Starting Quagga daemons (prio:10):. Ponemos los ficheros de configuración de quagga en su sitio.

cd /usr/share/doc/quagga/examples/ cp * /etc/quagga/

Renombramos los ejemplos de configuración, para usarlos y activar Quagga con la configuración por defecto.

cd /etc/quagga/ cp zebra.conf.sample zebra.conf cp ripd.conf.sample ripd.conf Configuramos los demonios para que active zebra, y por el momento RIP, aunque se hace de igual modo para los demás protocolos.

vim daemons Editamos las línas:

zebra=yes ripd=yes Así hemos marcado que queremos que Quagga arranque los demonios zebra y ripd (Que se encarga de RIP). Para que cargue de nuevo la configuración, reiniciamos Quagga.

/etc/init.d/quagga restart Stopping Quagga daemons (prio:0): (ripd) (zebra) (bgpd) (ripngd) (ospfd) (ospf6d) (isisd). Removing all routes made by zebra. Nothing to flush. Loading capability module if not yet done. Starting Quagga daemons (prio:10): zebra ripd. Ahora podremos acceder por separado con una interfaz interactiva a cada uno de los demonios. Para acceder a Zebra (Password por defecto zebra):

telnet localhost 2601 Para acceder al demonio de RIP (ripd) y configurarlo:

telnet localhost 2602

Configurando Zebra Zebra es el demonio gerente. Los demonios que se encargan de los protocolos de enrutamiento son: ripd, ripngd, ospfd, ospf6d, bgpd.

telnet localhost 2601

Password: zebra Podemos configurar Zebra editando el fichero de configuración zebra.conf o bien accediendo al demonio y por diversos comandos. Antes que nada con el signo de interrogación ? obtenemos una ayuda contextual de las posibilidades que se va clasificando, es decir, si ponemos ? nada más entrar, nos dice los posibles comandos que tenemos, pero si escribimos

debug ? Nos informa sobre los modificadores del comando debug en concreto. Esto es importante que quede claro, porque nos va a servir de mucho al principio, hasta que vayamos aprendiendo las principales instrucciones. Un ejemplo, cambiemos el nombre de host del router, ¿para qué? Imaginemos una red de más de 10.000 ordenadores, dividida en subredes comunicadas entre unos cuantos routers, ¿no sería útil que cada router tuviera un prompt distinto? Así podríamos configurar varios a la vez sin tener que recordar que vty corresponde a cada router. Vamos con ello:

enable Password: zebra Hemos entrado en el modo privilegiado y salido del modo usuario, ahora entraremos en el modo configuración. Estos son los únicos 3 modos existentes.

configure terminal Algunos estaréis pensando que se parece mucho a Cisco, pues sí. La sintaxis es en un 95% aproximadamente idéntica a la de un Cisco, aunque Quagga tiene algunas configuraciones que un router Cisco no dispone. Así del mismo modo, podemos abreviar comandos:

config t Si ahora hacemos un ‘?’:

hostname -----> Set system's network name Creo que resulta claro, que esto es lo que estábamos buscando. Así que:

hostname CHINI Y después de darle al intro, veremos como el prompt del router se actualiza. Ahora grabamos la nueva configuración del router en el fichero estático zebra.conf. Para ello tecleamos el comando:

write memory También podemos usar el antiguo comando respetado en versiones posteriores por Cisco:

wr El router nos informará de que la configuración se guardó:

Configuration saved to /etc/quagga/zebra.conf

Que es Quagga? Es un entorno de pruebas para topologias de red de esta forma evitamos el uso de laboratorio para experimentar. Esta instalación ha sido probada en:



LinuxMint (Ubuntu)

Instalamos quagga usando apt, asi nos liamos mucho menos que con el software center.

sudo apt-get install quagga Se instalarán los siguientes paquetes NUEVOS: quagga Preconfigurando paquetes …Seleccionando el paquete quagga previamente no seleccionado ... Instalamos quagga usando apt, asi nos liamos mucho menos que con el software center.

sudo apt-get install quagga Se instalarán los siguientes paquetes NUEVOS: quagga Preconfigurando paquetes …Seleccionando el paquete quagga previamente no seleccionado. (Leyendo la base de datos …**** ficheros y directorios instalados actualmente.) Desempaquetando quagga (de …/quagga_*.*.*ubuntu*.*_i386.deb) … grep: /etc/quagga/*.conf: No existe el fichero ó directorio Configurando quagga (*.*.*-*ubuntu*.*) … Loading capability module if not yet done. Starting Quagga daemons (prio:*):. Ponemos los ficheros de configuración de quagga en su sitio.

cd /usr/share/doc/quagga/examples/ cp * /etc/quagga/ Renombramos los ejemplos de configuración, para usarlos y activar Quagga con la configuración por defecto.

cd /etc/quagga/ cp zebra.conf.sample zebra.conf

cp ripd.conf.sample ripd.conf Configuramos los demonios para que active zebra, y por el momento RIP, aunque se hace de igual modo para los demás protocolos.

vim daemons Editamos las línas:

zebra=yes ripd=yes Así hemos marcado que queremos que Quagga arranque los demonios zebra y ripd (Que se encarga de RIP). Para que cargue de nuevo la configuración, reiniciamos Quagga.

/etc/init.d/quagga restaryomismi@yomismi-pc /etc/quagga $ sudo /etc/init.d/quagga restart [sudo] password for yomismi: Stopping Quagga monitor daemon: (watchquagga). Stopping Quagga daemons (prio : (ripd) (zebra) (bgpd) (ripngd) (ospfd) (ospf6d) (isisd) (babeld). Removing all routes made by zebra. Loading capability module if not yet done. Starting Quagga daemons (prio:10): zebra ripd. Starting Quagga monitor daemon: watchquagga. A continuacion accedemos a cada uno de los demonios de forma separada Para entrar a Zebra (contraseña por defecto es zebra):

telnet localhost 2601 Para entrar a RIP (ripd) y configurarlo:

telnet localhost 2602

Voy a intentar explicar como convertir dos ordenadores en routers(con quagga) e interconectarlos para que tengan conexion dos host conectados a ellos. Utilizaré el protocolo RIP. Mejor lo muestro en una imagen. Equipamento necesario: - Quagga software: is a routing software protocol suite, providing implementations of OSPFv2, OSPFv3, RIPv1, RIPv2, RIPng and BGP-4 for Unix platforms, particulary FreeBSD, Linux, Solaris and NetBSD. Quagga is a fork of GNU Zebra which was developed by Kunihiro Ishiguro. The quagga architecture consists of a core daemon: o Zebra: Which acts as an abstraction layer to the underlying Unix kernel and presents the Zserv API over a Unix or TCP stream to Quagga clients. It is these Zserv clients which typically implement a routing protocol and communicate routing updates to the zebra daemon. Existing Zserv clients are: Ospfd Ripd Ospf6d Ripngd Bgpd Additionally, the Quagga architecture has a rich development library to facilitate the implementation of protocol/client daemons, coherent in configuration and administrative behaviour. - Computers: Voy a usar ordenadores con Ubuntu OS. Cada ordenador tiene 2 tarjetas Ethernet (llamadas eth0 y eth1). - Crossover y cable optico:Voy a usar cossover para conectar ordenador-router, y cable optico para interconexion entre routers. COMANDOS USADOS: Primero instalacion de Quagga software pc@laboratory:~$ su root@laboratory:~# apt-get install quagga root@laboratory:~# cp * /usr/share/doc/quagga /etc/quagga Despues modificaremos el archivo llamado daemons para activar zebra y rip. root@laboratory:~# nano /etc/quagga/daemons activamos zebra y rip cambiando valores a yes y guardamos. root@laboratory:~# cd /etc/quagga root@laboratory:/etc/quagga# cp zebra.conf.save zebra.conf root@laboratory:/etc/quagga# cp ripd.conf.save ripd.conf Reiniciamos quagga root@laboratory:~# /etc/init.d/quagga restart Ahora accedemos a zebra root@laboratory:~# telnet localhost 2601 Password Router>enable Password Router# Router#show ip route Router#configure terminal Router(config)#hostname Router1 Router1(config)# Router1(config)#interface eth0 Router1(config-if)#ip address 192.168.1.1/24 Router1(config-if)#no shutdown Router1(config-if)#quit Router1(config)#interface eth1

Router1(config-if)#ip address 192.168.4.1/24 Router1(config-if)#no shutdown Router1(config-if)#quit Router1(config)#write Router1(config)#end Router1#show run Router1(config)#quit Reiniciar quagga root@laboratory:~# /etc/init.d/quagga restart Ahora accedemos a rip root@laboratory:~# telnet localhost 2602 Password ripd>enable Password ripd# ripd# configure terminal ripd(config)# router rip ripd(config-router)# ripd(config-router)# network 192.168.1.0/24 ripd(config-router)# network 192.168.4.0/24 ripd(config-router)# network eth0 ripd(config-router)# network eth1 ripd(config-router)# end ripd(config)#write ripd(config)#sh run ripd(config)#end ripd#quit Reiniciar quagga root@laboratory:~# /etc/init.d/quagga restart Tenemos que activar ip forwarding in linux root@laboratory:~# echo 1>/proc/sys/net/ipv4/ip_forward Ya hemos terminado de configurar el primer router Ahora vamos a configurar el otro router The pasos de instalacion y configuracion de zebra son exactamente los mismos, asique siguité desde la configuracion de zebra(telnet localhost 2601) Router2(config)#interface eth0 Router2(config-if)#ip address 192.168.2.1/24 Router2(config-if)#no shutdown Router2(config-if)#quit Router2(config)#interface eth1 Router2(config-if)#ip address 192.168.4.2/24 Router2(config-if)#no shutdown Router2(config-if)#quit Router2(config)#write Router2(config)#end Router2#show run Router2(config)#quit Restart quagga root@laboratory:~# /etc/init.d/quagga restart Ahora accedemos a rip root@laboratory:~# telnet localhost 2602 Password ripd>enable Password ripd#

ripd# configure terminal ripd(config)# router rip ripd(config-router)# ripd(config-router)# network 192.168.2.0/24 ripd(config-router)# network 192.168.4.0/24 ripd(config-router)# network eth0 ripd(config-router)# network eth1 ripd(config-router)# end ripd(config)#write ripd(config)#sh run ripd(config)#end ripd#quit Reiniciar quagga root@laboratory:~# /etc/init.d/quagga restart Tenemos que activar ip forwarding en linux root@laboratory:~# echo 1>/proc/sys/net/ipv4/ip_forward Ya he configurado el segundo router Ahora voy a configurar el Host A y el Host B HostA: root@laboratory:~# root@laboratory:~# HostB: root@laboratory:~# root@laboratory:~#

ifconfig eth0 192.168.1.3 netmask 255.255.255.0 route add default gw 192.168.1.1 eth0 ifconfig eth0 192.168.2.3 netmask 255.255.255.0 route add default gw 192.168.2.1 eth0

Ya hemos terminado, podemos comprobar la configuracion haciendo ping a todas las maquinas de todas las ips configuradas Espero que se la suficiente claro y si teneis dudas, preguntarme.