Está en la página 1de 29

Enrutamiento RIP, OSPF, IS-IS, BGP en Linux - Quagga y

análisis con Wireshark


Jefferson S. Agilaa , Edisson P. Cabreraa , Hernán Moralesa , David Montalvána , Mateo Álvareza ,
Andrés F. Córdovaa , David Zeaa , Manuel Guiracochaa , Edgar Bustamentea , Kevin Piedraa ,
Josue Arévaloa , Eduardo Limaa , Xavier Reibána , Miguel Laraa , José Espinozaa , and Juan Ingaa
a
Universidad de Cuenca, Ecuador

RESUMEN
Esta práctica corresponde a la implementación grupal realizada de los protocolos de enrutamiento RIP,
OSPF y IS IS, los cuales, funcionan en Sistemas Autónomos diferentes. La conexión entre éstos se realiza a
través de routers de bordes, donde se implementa el protocolo BGP. Para llevar a cabo este trabajo se utilizan
los computadores de los estudiantes del curso, con el sistema operativo Linux en su versión de Ubuntu. Además,
se emplea Quagga que es un suite de software libre para poder usar la familia de sistemas operativos Unix como
enrutadores. El proceso de configuración, resultados, pruebas y conclusiones se presentan a continuación.
Keywords: RIP, IS IS, OSPF, BGP, Linux, Quagga

1. INTRODUCCIÓN
Internet es la red de redes que permite una conexión de nivel mundial entre diferentes sistemas autónomos,
con caracterı́sticas diferentes tanto en hardware como en software. Con este propósito se han creado diferentes
protocolos que permiten que se lleve a cabo la comunicación entre sistemas. Si bien cada sistema utiliza diferente
topologı́a y protocolos de enrutamiento como OSPF, IS IS y RIP, sin embargo a la hora de salir a Internet
se debe manejar un lenguaje común a todos los sistemas. Los protocolos de enrutamiento más empleados son:
OSPF, RIP¨e IS IS, los cuales, han sido empleados en este trabajo para cada uno de los tres sistemas autónomos.
Dentro de cada sistema se ha definido un router de borde, el cual, incorpora el protocolo BGP que permite la
comunicación con cada uno de los sistemas.
Este documento comienza describiendo la implementación de Quagga, para luego describir la topologı́a (Fig.1)
utilizada en cada uno de los sistemas y el proceso de configuración llevado a cabo en cada uno de ellos. Finalmente,
se presentan los resultados de este trabajo junto con sus respectivas conclusiones.

1
Figura 1: Topologı́a de red implementada.

2. IMPLEMENTACIÓN EN QUAGGA
Los pasos previos antes de la implementación de cualquier protocolo son:

Instalamos Quagga, dirigiéndonos a la lı́nea de comandos de Ubuntu y ejecutando el comando:

Figura 2: Instalación de Quagga

Se accede al directorio de quagga, donde se encontraran los archivos de configuración de cada protocolo:

Figura 3: Archivos de configuración ejemplo de cada protocolo.

Se ejecuta quagga con el siguiente comando: /etc/init.d/quagga start

Ahora se configura el archivo daemos ubicado en /etc/quagga/daemons, con el comando sudo nano dae-
mons, a este archivo se la modifica la siguiente información:

2
Figura 4: Demonios de Quagga

El paso siguiente es copiar los archivos de configuración de Quagga a otra carpeta para proceder a su
configuración.

3. CONFIGURACIÓN DE RIP
Para la configuración del protocolo RIP se emplea topologı́a que se muestra en la figura 5

Figura 5: Topologı́a para el sistema autónomo 100 con OSPF.

Una vez que se tiene definida la topologı́a de la red se procede ha realizar la configuración de cada uno de los
ordenadores .

3.1 Configuración de RIP en Quagga


Para poder estableces un PC como un router se debe de seguir los siguientes pasos.
Desconectarse de todas las redes en todas las interfaces de red

ifconfig

3
configurar rip en cuaga
Se habre un terminal para la ejecucion de los siguientes comandos.

sudo vtysh
-----------------------
se presiona q
------------------------------
telnet localhost 2602
----------------------------
password: zebra
-----------------------------
ripd> enable
-----------------------------
ripd#configure terminal
------------------------
ripd(config)#router rip
------------------------
ripd(config-router)# network 192.168.8.0/24
ripd(config-router)# network 192.168.9.0/24
ripd(config-router)# network 192.168.6.0/24
ripd(config-router)# network 192.168.11.0/24
---------------------------------------------
ripd(config-router)# exit
------------------------------------------------
ripd(config)# exit
------------------------------------
ripd#write
------------------------

En otro terminal se configura las terminales virtuales

sudo ifconfig eno1:0 192.168.8.1 netmask 255.255.255.0


-------------------------------------------------------
sudo ifconfig eno1:1 192.168.9.1 netmask 255.255.255.0
------------------------------------------------------

-------------------------------------------
se configua la etherner por defecto su ip asignada
sudo ifconfig eno1 192.168.11.1 netmask 255.255.255.0
------------------------------------------------------

Una vez configurados las teminales se puede realizar un reseteo en el caso de que necesite cambiar de ad hoc
Se consulta las redes disponibles y si estan asignados correctamente

ifconfig

4
para poder ver las redes aprendidas tenemos que ejecutar los siguiente dentro del terminal en donde se
configuro las interfaces

sudo vtysh

Este comando nos muestra las interfaces aprendidas.

sh ip route

Figura 6: Configuración rip en telenet.

Figura 8: Configuración rip en telenet.

5
Figura 7: Configuración rip en telenet

6
Figura 10: Configuración rip en telenet.

Figura 11: Configuración rip en telenet

7
Figura 12: Configuración rip en telenet

Figura 13: Configuración rip en telenet

8
Figura 14: Configuración rip en telenet.

Figura 15: Configuración BGP en telenet..

9
Figura 16: Configuración BGP en telenet.

10
4. CONFIGURACIÓN DE OSPF

4.1 Topologı́a de OSPF

Figura 17: Topologı́a para AS 200 con OSPF.

4.2 Configuración
Continuando con lo mencionado en la sección 2, se sigue los siguientes pasos:

1. Copiamos los ficheros de ejemplo zebra.conf.sample y ospf.conf.sample que nos ofrece el paquete de Quagga
desde la ubicacion /usr/share/doc/quagga/examples al directorio /etc/quagga.

Figura 18: Copia de Ficheros

Se debe tomar en cuenta que en la carpeta de destino debemos tener permisos de escritura, finalmente con
el comando ls, observamos los archivos que hemos copiado.

Figura 19: Permisos de Ficheros

11
2. Reiniciamos Quagga con el siguiente comando:

Figura 20: Reinicio Quagga

3. Ejecutamos el demonio de zebra con el comando telnet localhost zebra:

Figura 21: Ejecución Zebra

4. Ingresamos la contraseña del Router que por defecto es “zebra”.

5. Antes de proceder a configurar ospf, debemos crear interfaces de red virtuales para el router a partir de la
interfaz de red ethernet disponible.

Figura 22: Creación de subinterfaces virtuales.

Ahora se verifica que las subinterfaces fueron creadas:

Figura 23: Verficación de subinterfaces virtuales.

6. Continuado con el punto 4, se ejecuta zebra, se ingresa al router y se ejecuta el comando show ip route, el
cual nos devuelve las interfaces de red del router.

12
Figura 24: Rutas propias del router.

7. A continuación, se configura OSPF esto se realiza con el comando: telnet localhost ospfd, se ingresa la
contraseña “zebra”, y se establece las red que van hablar ospf.

Figura 25: Ingreso al proceso OSPF.

8. Se ingresa los siguiente comandos para acceder al router, y se establece todas las redes OSPF que necesi-
temos ingresar al área 0.

Figura 26: Configuración OSPF.

9. Configuración de BGP en router de Borde:

Figura 27: Configuración y Redistribución BGP en OSPF

13
4.3 Pruebas de Funcionamiento de OSPF y BGP
Se comprueba que se ha configurado OSPF, ejecutando Zebra y mostrando las interfaces conectadas directa-
mente y por OSPF.

Figura 28: Rutas aprendidas por OSPF.

4.3.1 Verificación de BGP


Primeramente se debe conocer que los AS, se distribuyen de la siguiente manera:

AS200: OSPF

AS100: RIP

AS7675:IS-IS

Se utilizara el comando ping y traccepath desde la linea de comandos de Ubuntu no desde Zebra, para verificar
conectividad entre ASs:
Ping desde interfaz dentro del AS200:

Figura 29: Ping dentro del mismo AS.

14
Ping desde interfaz del AS200 al AS100:

Figura 30: Ping entre AS200 a AS100.

Ruta trazada desde interfaz del AS200 al AS100:

Figura 31: Ruta entre AS200 a AS100.

Ping desde interfaz del AS200 al AS7675

Figura 32: Ruta entre AS200 a AS7675.

Finalmente se comprueba las rutas aprendidas luego de la configuración de BGP, estas deben ser todas las
redes de cada AS.

15
Figura 33: Ruta aprendidas parte 1 .

Figura 34: Ruta aprendidas parte 2.

16
5. CONFIGURACIÓN DE IS IS

Figura 35: Red ISIS

5.1 Zebra
telnet localhost 2601
password:zebra

conf t
int wlx60e327166b25
ip address 100.100.100.2/24
no sh
int wlx503eaa45df49
ip address 10.0.1.1/24
no sh
int lo
ip address 10.1.1.1/24
end
wr

17
5.2 ISIS
telnet localhost isisd
password:foo

conf t
router isis WORD
net 49.0001.0000.0000.1111.00
metric-style wide
is-type level-2-only
end
wr
conf t
int wlx503eaa45df49
ip router isis WORD
isis network point-to-point
isis circuit-type level-2-only
end
wr
conf t
int lo
ip router isis WORD
isis circuit-type level-2-only
end
wr

5.3 iBGP
telnet localhost bgpd
password:zebra

conf t
router bgp 7675
bgp router-id 10.0.1.1
network 10.0.1.0/24
network 10.0.2.0/24
network 10.11.11.11/32
neighbor 10.0.1.2 remote-as 7675
neighbor 10.0.1.2 route-map set-nexthop out
neighbor 10.0.1.2 ebgp-multihop
neighbor 10.0.1.2 next-hop-self
neighbor 10.0.2.2 remote-as 7675
neighbor 10.0.2.2 route-map set-nexthop out
neighbor 10.0.2.2 ebgp-multihop
neighbor 10.0.2.2 next-hop-self
access-list all permit any
route-map set-nexthop permit 10
match ip address all
end
wr

18
5.4 eBGP
telnet localhost bgpd
password:zebra

conf t
router bgp 7675
bgp router-id 10.0.1.1
network 100.100.100.0/24
network 200.200.200.0/24
network 10.11.11.11/24
neighbor 100.100.100.1 remote-as 100
neighbor 100.100.100.1 route-map set-nexthop out
neighbor 100.100.100.1 ebgp-multihop
neighbor 100.100.100.1 next-hop-self
neighbor 200.200.200.2 remote-as 200
neighbor 200.200.200.2 route-map set-nexthop out
neighbor 200.200.200.2 ebgp-multihop
neighbor 200.200.200.2 next-hop-self
ex
access-list all permit any
route-map set-nexthop permit 10
match ip address all
end
wr

5.5 Pruebas de Funcionamiento de IS IS

Figura 36: Vecinos ISIS

Figura 37: Tabla de enrutamiento ISIS

19
Figura 38: Vecinos BGP

Figura 41: Ping 200.200.200.2 Router AS 200

20
Figura 39: Tabla de enrutamiento ISIS y BGP

Figura 40: Tabla de enrutamiento todos las AS

6. ANÁLISIS DE TRÁFICO
En esta sección de presenta el tráfico capturado desde al área configurada con el protocolo RIP en su versión
2, se observa que este paquete es transportado a través de la conexión cableada.

21
Figura 42: Captura de Tráfico

22
A continuación se detalla un paquete de ping entre el host 192.168.4.2 hacia el host 70.70.70.1, los cuales, se
encuentran en áreas distintas, esto se muestra en la siguiente figura. Como se observa se han enviado de forma
exitosa 48 paquetes, el protocolo usado es ICMP (Internet Control Message Protocol),

Figura 43: Paquete Tipo Ping

23
Figura 44: Fuente y Destino de Ping

24
Ahora se presenta el tráfico generado para realizar un ping entre el host 200.200.200.2 y el host 192.168.5.2,
aquı́ se puede observar las direcciones MAC de los computadores que intervienen en la comunicación. En este
caso el time to live o tiempo de vida del paquete se ha excedido.

Figura 45: Tráfico de Ping

25
Por otro lado se muestra un paquete del protocolo RIP, donde se observa el origen del paquete y su destino,
la versión de RIP.

Figura 46: Tráfico de RIP

26
En cuanto al protocolo de ICMP versión 3 se presenta un análisis de un paquete de reporte de membresı́a

Figura 47: Tráfico de ICMP v3

27
También se observó la presencia de paquetes tipo ARP

Figura 48: Paquetes ARP

28
7. CONCLUSIONES
En este trabajo se logro configurar exitosamente cada protocolo IGP, al momento de integrarlos con BGP,
se tuvo problemas con la redistribución interna de IS-IS. Sin embargo, si se pudo llegar al router de borde de
este sistema autónomo. Se debe tomar en cuenta tres aspectos básicos dentro de la configuración de cualquier
protocolo en Quagga, el primero es desactivar el firewall, el segundo activar el demonio de zebra y del protocolo
a usar, y finalmente la redistribución de BGP dentro de los protocolos IGP.
Se plantearon dos diferentes topologı́as dentro de los AS. La topologı́a en estrella requiere de un punto de
acceso que actue como punto central para la conexión de los ordenadores, mientras que, la topologı́a presentada
en RIP e IS-IS requiere de la conexión usando dos interfaces de red por ordenador. En esta topologı́a es válido
utilizar ya sea una red Ad Hoc o un punto de acceso entre ordenadores para establecer los enlaces inalámbricos.
Una topologı́a con recorridos redundantes requiere el uso de mayor número de interfaces por ordenador.
Quagga es un herramienta que permite utilizar un ordenador como enrutador. Este software cuenta con
paquetes de enrutamiento que proporcionan implementaciones de OSPF, RIP, BGP, entre otros. Sin embargo, la
implementación de cualquiera de ellos se encuentra ligada a las caracterı́sticas de los demonios de Quagga, que
podrı́an no contar con caracterı́sticas y/o funciones requeridas para implementaciones de mayor complejidad.

REFERENCIAS

1. “Quagga Software Routing Suite.” [Online]. Available: https://www.quagga.net/.

29

También podría gustarte