9
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) OSPF v2/v3 (Open Shortest Path First) BGP -4 y BGP -4+ (Border Gateway Protocol) 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 6.10 Edgy Ubuntu 7.04 Feisty Fawn 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/

189880355 Instalando Quagga En

Embed Size (px)

Citation preview

Page 1: 189880355 Instalando Quagga En

Instalando Quagga en Ubuntu25 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)

OSPF v2/v3 (Open Shortest Path First)

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

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 UbuntuEsta instalación ha sido probada en:

Ubuntu 6.06 Dapper Drake

Ubuntu 6.10 Edgy

Ubuntu 7.04 Feisty Fawn

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:quaggaPreconfigurando 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 ó directorioConfigurando 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.

Page 2: 189880355 Instalando Quagga En

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 ZebraZebra 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

Page 3: 189880355 Instalando Quagga En

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 nameCreo 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?

Page 4: 189880355 Instalando Quagga En

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:quaggaPreconfigurando 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:quaggaPreconfigurando 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 ó directorioConfigurando 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.

Page 5: 189880355 Instalando Quagga En

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

Page 6: 189880355 Instalando Quagga En

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              BgpdAdditionally, 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 softwarepc@laboratory:~$ suroot@laboratory:~# apt-get install quaggaroot@laboratory:~# cp * /usr/share/doc/quagga /etc/quaggaDespues modificaremos el archivo llamado daemons para activar zebra y rip.root@laboratory:~# nano /etc/quagga/daemonsactivamos zebra y rip cambiando valores a yes y guardamos.root@laboratory:~# cd /etc/quaggaroot@laboratory:/etc/quagga# cp zebra.conf.save zebra.confroot@laboratory:/etc/quagga# cp ripd.conf.save ripd.confReiniciamos quaggaroot@laboratory:~# /etc/init.d/quagga restartAhora accedemos a zebraroot@laboratory:~# telnet localhost 2601PasswordRouter>enablePasswordRouter#Router#show ip routeRouter#configure terminalRouter(config)#hostname Router1Router1(config)#Router1(config)#interface eth0Router1(config-if)#ip address 192.168.1.1/24Router1(config-if)#no shutdownRouter1(config-if)#quitRouter1(config)#interface eth1Router1(config-if)#ip address 192.168.4.1/24Router1(config-if)#no shutdownRouter1(config-if)#quitRouter1(config)#writeRouter1(config)#endRouter1#show runRouter1(config)#quitReiniciar quaggaroot@laboratory:~# /etc/init.d/quagga restart

Page 7: 189880355 Instalando Quagga En

Ahora accedemos a riproot@laboratory:~# telnet localhost 2602Passwordripd>enablePasswordripd#ripd# configure terminalripd(config)# router ripripd(config-router)#ripd(config-router)# network 192.168.1.0/24ripd(config-router)# network 192.168.4.0/24ripd(config-router)# network eth0ripd(config-router)# network eth1ripd(config-router)# endripd(config)#writeripd(config)#sh runripd(config)#endripd#quitReiniciar quaggaroot@laboratory:~# /etc/init.d/quagga restartTenemos que activar ip forwarding in linuxroot@laboratory:~# echo 1>/proc/sys/net/ipv4/ip_forwardYa hemos terminado de configurar el primer router

Ahora vamos a configurar el otro routerThe pasos de instalacion y configuracion de zebra son exactamente los mismos, asique siguité desde la configuracion de zebra(telnet localhost 2601)Router2(config)#interface eth0Router2(config-if)#ip address 192.168.2.1/24Router2(config-if)#no shutdownRouter2(config-if)#quitRouter2(config)#interface eth1Router2(config-if)#ip address 192.168.4.2/24Router2(config-if)#no shutdownRouter2(config-if)#quitRouter2(config)#writeRouter2(config)#endRouter2#show runRouter2(config)#quitRestart quaggaroot@laboratory:~# /etc/init.d/quagga restart

Ahora accedemos a riproot@laboratory:~# telnet localhost 2602Passwordripd>enablePasswordripd#ripd# configure terminalripd(config)# router ripripd(config-router)#ripd(config-router)# network 192.168.2.0/24ripd(config-router)# network 192.168.4.0/24ripd(config-router)# network eth0ripd(config-router)# network eth1ripd(config-router)# endripd(config)#writeripd(config)#sh runripd(config)#endripd#quitReiniciar quagga

Page 8: 189880355 Instalando Quagga En

root@laboratory:~# /etc/init.d/quagga restartTenemos que activar ip forwarding en linuxroot@laboratory:~# echo 1>/proc/sys/net/ipv4/ip_forwardYa he configurado el segundo router

Ahora voy a configurar el Host A y el Host B

HostA:root@laboratory:~# ifconfig eth0 192.168.1.3 netmask 255.255.255.0root@laboratory:~# route add default gw 192.168.1.1 eth0HostB:root@laboratory:~# ifconfig eth0 192.168.2.3 netmask 255.255.255.0root@laboratory:~# 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.