Enrrutamiento RIP en Linux con Zebra

¿Que es Zebra? (Wikipedia)

Zebra es un demonio que en los sistemas unix se encarga de manejar las tablas de ruteo. Se encarga de imitar un enrutador físico. Maneja protocolos de ruteo como MPLS,BGP, OSPF, RIP (protocolo), ISIS y dos versiones más de rip y ospf las cuales van orientadas a IPv6.

Se usa directamente en los kerneles de BSD, solaris, linux; pero solo versiones de hace 2 o 3 años. Eso no significa, sin embargo, que esté descontinuado pues en los kerneles nuevos de los Unix mencionados usa quagga como su interfaz que interviene por sus librerías y lo convierte en demonio alejado de la mano del usuario.


Instalamos Quagga y telnet

apt-get install quagga telnet

Copiamos los ejemplos de configuración.

Accedemos al directorio

cd /usr/share/doc/quagga/example/

Copiamos los directorios al fichero de configuración /etc/quagga

cp zebra.conf.sample vtsh.conf.sample ripd.conf.sample /etc/quagga/

Accedemos al fichero de configuración.

cd /etc/quagga/

Y modificamos los nombres de los ficheros copiados.

mv zebra.conf.sample zebra.conf

mv vtysh.conf.sample vtysh.conf

mv ripd.conf.sample ripd.conf

Activamos los demonios que vallamos a utilizar, en mi caso RIP.

Editamos el archivo

vi daemons

y Activamos el protocolo a utilizar y zebra

zebra=yes

ripd=yes

Editamos el fichero /etc/network/interfaces para que no se levante ninguna interfaz.

vi  /etc/network/interfaces

Podemos comentarla con un #

#iface eth0 inet dhcp

Nos conectamos (La contraseña por defecto es zebra)

telnet localhost zebra

Trying ::1…
Trying 127.0.0.1…
Connected to localhost.
Escape character is ‘^]’.

Hello, this is Quagga (version 0.99.15).
Copyright 1996-2005 Kunihiro Ishiguro, et al.

User Access Verification

Password:

Vamos al terminal de configuración.

router# configure terminal

En la interfaz, obviamente tenéis que poner la que os corresponda.

router(config)# interface eth0

Le asignamos una dirección y una mascara.

router(config-if)# ip address 10.30.0.0/16

Salimos y guardamos

router(config-if)# quit

router(config)# write

Configuration saved to /etc/quagga/ripd.conf

En mi caso voy a configurar 3 Interfaces mas, seguimos el mismo procedimiento.

Interfaz eth1

router# configure terminal

router(config)# interface eth1

router(config-if)# ip address 10.20.0.0/16

router(config-if)# quit

router(config)# write

Configuration saved to /etc/quagga/ripd.conf

Interfaz eth2

router# configure terminal

router(config)# interface eth2

router(config-if)# ip address 10.50.0.0/16

router(config-if)# quit

router(config)# write

Configuration saved to /etc/quagga/ripd.conf

Interfaz eth3

router# configure terminal

router(config)# interface eth2

router(config-if)# ip address 10.40.0.0/16

router(config-if)# quit

router(config)# write

Configuration saved to /etc/quagga/ripd.conf

Activamos  forwarding  para que enrrute.

#echo “1″ > /proc/sys/net/ipv4/ip_forward

Para dejarlo permanete redirigimos la salida al fichero /etc/sysctl.conf

#echo “net.ipv4.ip_forward = 1″ >> /etc/sysctl.conf

Y por ultimo le decimos a iptables que acepte esos renvios

iptables -A FORWARD -j ACCEPT

iptables -t nat -A POSTROUTING -s 10.30.0.0/16-o eth0 -j MASQUERADE

iptables -t nat -A POSTROUTING -s 10.20.0.0/16 -o eth1 -j MASQUERADE

iptables -t nat -A POSTROUTING -s 10.40.0.0/16 -o eth3 -j MASQUERADE

iptables -t nat -A POSTROUTING -s 10.50.0.0/16 -o eth2 -j MASQUERADE

Mas información relacionada con ello:

quagga

cisco

Ya iré ampliando esto, espero que os sirva.

Un saludo rokitoh

:wq!

 

One thought on “Enrrutamiento RIP en Linux con Zebra

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*