Está en la página 1de 25

BGP

Jose Espinosa - jose.espinosaf@ucuenca.edu.ec


Universidad de Cuenca, Ecuador

Abstract
Los protocolos de enrutamiento son de mucha importancia, ya que son el-
los los que gestionan el intercambio de información en las redes. BGP es un
protocolo de puerta de enlace de frontera , el mismo permite intercambiar in-
formación de encaminamiento entre sistemas autónomos, en donde los router
conocen la información de su sistema autónomo mediante el protocolo de
enrutamiento y conoce información de otros sistemas autónomos mediante el
router de frontera que recibe esta información mediante BGP, de este modo
se calcula el costo entre en laces internos y externos, este tipo de protocolos
es muy utilizado por ISP de proveedores de servicio. Para que este protocolo
funcione, tanto el router de frontera como los routers de área deben estar
configurados con BGP. Sin embargo, aun cuando el router se encuentre en
las tablas de enrutamiento, puede no ser alcanzable, se debe tomar esto muy
en cuenta al momento de enviar información. Considerando lo mencionado,
es de vital importancia la implementación de este protocolo, ya que BGP
permite la comunicación entre diferentes AS que hablan distintos protocolos.
Keywords: Enrutamiento, BGP, AS, Frontera, Enrutamiento, ISP.

1. Objetivos
- Realizar un diseño con varios AS, cada uno funcionando con diferentes pro-
tocolos de enrutamiento y que entre estos se comuniquen mediante BGP.

- Para los diferentes AS se implementara RIP, OSPF y IS-IS.

- Realizar el análisis de tráfico mediante WireShark.

Preprint submitted to Journal Name June 18, 2019


2. Introducción
Para esta práctica se diseñará una red que tres diferentes AS utilizando
routers CISCO3600, para ello el diseño se basará en el modelo propuesto
en el libro, sin embargo, se hizo algunas modificaciones en el área de back-
bone ya que no es necesario tantos router en el área de iBGP. Todos las
AS estarán configuradas con un diferente protocolo de enrutamiento (RIP,
OSPF y IS-IS). Se utilizará el software GNS3 para realizar esta simulación,
el cual posee el router a utilizar, todos estos estarán conectados mediante
Ethernet. En el AS 200 se poseerá 3 router hablando RIP, en el AS 300 exis-
tirán 4 routers hablando OSPF y en el AS 400 estarán configurados 3 router
hablando IS-IS. Existirán 3 routers de borde de área. Una vez configurado los
IPs de cada router, se procederá a colocar BGP en ellos, se verificara como
cada router aprende la topologı́a de la AS mediante el protocolo protocolo
re enrutamiento propio, además se configurara cada AS con iBGP y cada
router de frontera mediante eBGP, este automáticamente aprende todas las
conexiones de los router de la red, enviando a cada router información de
estado a todos los routers de la red, para esto el protocolo arma tablas de
enrutamiento, en donde se definen las posibles rutas a los diferentes destinos,
y se marcaran las mejores rutas para él envió de paquetes desde un router
hasta otro.

Figure 1: Red con multiples AS

2
Una vez ya realizada la red y Una vez ya realizada la red y probado su
funcionamiento con el protocolo interno de cada AS, se procederá a configurar
los router de cada AS con iBGP y cada router de frontera con eBGP. Luego
se procederá a realizar el análisis del tráfico de la red mediante WireShark,
en donde se capturara los paquetes y se penalizará que tipo de contenido
tiene un paquete utilizados por el protocolo BGP.

3. Marco Teórico
A continuación se detallara los software utilizados, y tambien se explicara
el funcionamiento del protocolo BGP , ademas de los otros protocolos de
enrutamiento.

3.1. BGP
El protocolo de puerta de enlace de frontera (BGP) es un ejemplo de pro-
tocolo de puerta de enlace exterior (EGP). BGP intercambia información de
encaminamiento entre sistemas autónomos a la vez que garantiza una elección
de rutas libres de bucles. A diferencia de los protocolos de puerta de enlace
internos (IGP), como RIP, OSPF y EIGRP, no usa métricas como número
de saltos, ancho de banda o retardo. En cambio, BGP toma decisiones de
encaminamiento basándose en polı́ticas de la red, o reglas que utilizan varios
atributos de ruta BGP.
BGP juega un papel crı́tico en las comunicaciones en Internet. Facilita el
intercambio de información sobre redes IP y la comunicación entre sistemas
autónomos (AS). Por tanto, BGP es un protocolo interdominio (entre sis-
temas autónomos) e intradominio (dentro del mismo sistema autónomo).

El protocolo BGP se utiliza para intercambiar información mediante el


establecimiento de una sesión de comunicación entre los enrutadores de fron-
tera de los sistemas autónomos. Para conseguir una entrega fiable de la
información, se hace uso de una sesión de comunicación basada en TCP en el
puerto número 179. Esta sesión debe mantenerse activa debido a que ambos
extremos de la comunicación periódicamente se intercambian y actualizan in-
formación. Al principio, cada router envı́a al vecino toda su información de
encaminamiento y después únicamente se enviarán las nuevas rutas, las actu-
alizaciones o la eliminación de rutas transmitidas con anterioridad. Además
periódicamente se envı́an mensajes para garantizar la conectividad.

3
3.2. RIP
El protocolo RIP1 es un protocolo de encaminamiento dinámico de tipo
IGP (Internal Gateway Protocol), mediante el cuál los router pertenecientes
a un mismo Sistema Autónomo intercambian y actualizan sus correspondi-
entes tablas de rutas.

El fundamento de dicho protocolo radica en el empleo del algoritmo vector


distancia, que determina las redes que son alcanzables por un router medi-
ante el cálculo del número de saltos existentes (mı́nimo 1, máximo 16). Es
decir, que si el número de saltos necesarios para llegar a una determinada
red es igual a 16, se dice que dicha red es inalcanzable.

La adaptación de rutas se hace a través del puerto 520 y el protocolo


UDP mediante difusión de tablas cada 30 segundos (1 ciclo), o antes si ha
habido algún cambio en las mismas. Si una ruta no es confirmada en 6 ciclos,
se pone como inalcanzable (a 15 saltos) y si ésta permanece 2 ciclos más sin
confirmar, se borra.

Es importante destacar, del mismo modo, que el protocolo RIP lleva aso-
ciadas ciertas limitaciones como son el reducido diámetro de red en el que
opera, el excesivo tráfico de control y consumo de recursos de red que conll-
eva, la lenta convergencia y la elección de una ruta no siempre óptima (sólo
tiene en cuenta el número de saltos existentes y no el estado de cada enlace).

Teniendo en cuenta todos estos aspectos, pasamos a explicar con más


detalle los rasgos principales de las dos versiones existentes, RIPv1 y RIPv2,
de la implementación de dicho protocolo. Aunque si bien es cierto, todo el
estudio que aparece recogido en este informe atañe principalmente a RIPv1,
ya que de RIPv2 sólo aparecen aquellas referencias que son comunes a ambas
versiones.

3.3. OSPF
Open Shortest Path First o OSPF, Primer Camino Más Corto, es un pro-
tocolo de red para encaminamiento jerárquico de pasarela interior o Interior
Gateway Protocol (IGP), que usa el algoritmo Dijkstra, para calcular la ruta
más corta entre dos nodos.

4
Su medida de métrica se denomina cost, y tiene en cuenta diversos parámetros
tales como el ancho de banda y la congestión de los enlaces. OSPF con-
struye además una base de datos enlace-estado (Link-State Database, LSDB)
idéntica en todos los routers de la zona.

OSPF puede operar con seguridad usando MD5 para autenticar sus pun-
tos antes de realizar nuevas rutas y antes de aceptar avisos de enlace-estado.

OSPF es probablemente el protocolo IGP más utilizado en redes grandes;


IS-IS, otro protocolo de encaminamiento dinámico de enlace-estado, es más
común en grandes proveedores de servicios. Como sucesor natural de RIP,
acepta VLSM y CIDR desde su inicio. A lo largo del tiempo, se han ido
creando nuevas versiones, como OSPFv3 que soporta IPv6 o las extensiones
multidifusión para OSPF (MOSPF), aunque no están demasiado extendidas.
OSPF puede ”etiquetar” rutas y propagar esas etiquetas por otras rutas.

3.4. IS-IS
IS-IS es un protocolo de enrutamiento interior desarrollado en los años 80
por Digital Equipment Corporation (DEC) y llamado originalmente DECnet
Phase V. Después fue adoptado por la International Organization for Stan-
dardization (ISO) como protocolo de enrutamiento para la Interconexión de
Sistemas Abiertos (OSI). Su desarrollo estuvo motivado por la necesidad de
un sistema no propietario que pudiera soportar un gran esquema de direc-
cionamiento y un diseño jerárquico.

Los grandes proveedores de servicios de Internet han venido usando IS-IS


desde su introducción y recientemente se ha comenzado a implementar en
otros mercados. IS-IS permite trabajar con Type of Service (ToS) para la
ingenierı́a de tráfico.

Es un protocolo de la capa de red. Permite a sistemas intermedios


(IS’s)dentro de un mismo dominio cambiar su configuración e información de
ruteo para facilitar la información de encaminamiento y funciones de trans-
misión de la capa de red.

IS-IS y OSPF, son protocolos de estado de enlaces que utilizan el Algo-


ritmo de Dijkstra para encontrar el mejor camino a través de la red. Ambos

5
soportan máscaras de subred de diferente longitud, pueden usar multicast
para encontrar routers vecinos mediante paquetes hello y pueden soportar
autentificación de actualizaciones de encaminamiento.

3.5. GNS-3
GNS3 es un simulador gráfico de red que te permite diseñar topologı́as
de red complejas y poner en marcha simulaciones sobre ellos.
Para permitir completar simulaciones, GNS3 está estrechamente vinculada
con:
- Dynamips, un emulador de IOS que permite a los usuarios ejecutar binarios
imágenes IOS de Cisco Systems.
- Dynagen, un front-end basado en texto para Dynamips
- Qemu y VirtualBox, para permitir utilizar máquinas virtuales como un fire-
wall PIX.
- VPCS, un emulador de PC con funciones básicas de networking
- IOU (IOS on Unix), compilaciones especiales de IOS provistas por Cisco
para correr directamente en sistemas UNIX y derivados.

GNS3 es una excelente herramienta complementaria a los verdaderos labo-


ratorios para los administradores de redes de Cisco o las personas que quieren
pasar sus CCNA, CCNP, CCIE DAC o certificaciones.

3.6. WireShark
Wireshark, es un analizador de protocolos utilizado para realizar análisis
y solucionar problemas en redes de comunicaciones, para desarrollo de soft-
ware y protocolos, y como una herramienta didáctica. Cuenta con todas las
caracterı́sticas estándar de un analizador de protocolos de forma únicamente
hueca. La funcionalidad que provee es similar a la de tcpdump, pero añade
una interfaz gráfica y muchas opciones de organización y filtrado de infor-
mación. Ası́, permite ver todo el tráfico que pasa a través de una red.
Permite examinar datos o de un archivo de captura salvado en disco. Se
puede analizar la información capturada, a través de los detalles y sumarios
por cada paquete. Wireshark incluye un completo lenguaje para filtrar lo que
queremos ver y la habilidad de mostrar el flujo reconstruido de una sesión de
TCP.

6
4. Metodologı́a
En esta sección de mencionar como se instala y configuro cada uno de los
programas utilizados en esta práctica, además de ver el funcionamiento del
sistema.

4.1. GNS-3
Esto no fue nada complicado, ya que, al instalarlo en Windows, tan solo
se procede a descargar el software de la página oficial. Lo único que se debe
tomar en cuenta es que se debe descargar los archivos IOS de los Routers
CISCO, estos se encuentran sencillamente en internet y se los carga en GNS-
3.

4.2. WireShark
Es sencillo, para esto solo descargamos y ejecutamos en Windows.

Una vez que tenemos todos los programas instalados y funcionando, pro-
cedemos a ver el funcionamiento de todo en conjunto, para ello primero
dejamos corriendo el navegador y procedemos a capturar los datos para ver
si se están capturando los paquetes.

4.3. Configuración Routers


El procedimiento es muy sencillo para en primer lugar configurar los IP
de cada Router, esto se repite en cada uno de los mismos.

Configure terminal
Int e0/0
Ip address x.x.x.x y.y.y.y
Exit
Int loopback Ip address x.x.x.x y.y.y.y
Exit

Esto en cada router se repetirá si se posee más de un puerto Ethernet.

7
Figure 2: Red total

Una vez que se tiene ya las direcciones IP, se procede a configurar los
protocolos en las diferentes AS.

8
4.4. AS 200 RIP

Figure 3: AS 200

Una vez que se tiene ya las direcciones IP, se procede a configurar el pro-
tocolo RIP.

Configure terminal
Router rip
Version 2
Network x.x.x.x
Exit
End
wr

Luego configuramos iBGP.

conf t
router bgp 200
neighbor xxxx.xxxx.xxxx.xxxx remote-as 200
end
wr

Esto se repite con cada vecino de la red, se debe colocar el ip que llega al
router vecino, como estamos configurando iBGP, todos los router poseen el
mismo remote-as 200. Una vez hecho esto en todos los routers, configuramos

9
el router de frontera con eBGP, el cual debera conocer a los vecinos de su
AS, asi como tambien conocer a sus otros vecinos que son routers de frontera.

conf t
router bgp 200
neighbor xxxx.xxxx.xxxx.xxxx remote-as x
end
wr

Ahora se debe declarar las redes que conocera el router de frontera, las
mismas que permitiran volver alcanzables a los routers de la AS. Se debe
colocar tambien las redes que unen con los routers de frontera.

conf t
router bgp 200
network xxxx.xxxx.xxxx.0 mask xxxx.xxxx.xxxx.xxxx
end
wr

Para verificar que todo esta configurado de manera correcta, se procede


a digitar

sh ip pro

Esto permitira ver los protocolos que funcionan en el router, ası́ como un
breve detalla de los datos que proporciona el mismo.

10
Figure 4: RIP y BGP

Figure 5: Tabla de enrutamiento RIP

11
4.5. AS 300 OSPF

Figure 6: AS 300

Una vez que se tiene ya las direcciones IP, se procede a configurar el pro-
tocolo OSPF.

Configure terminal
Router ospf 1
Network x.x.x.0 0.0.0.x area x
Exit
End
wr

Luego configuramos iBGP.

conf t
router bgp 300
neighbor xxxx.xxxx.xxxx.xxxx remote-as 300
end
wr

12
Esto se repite con cada vecino de la red, se debe colocar el ip que llega al
router vecino, como estamos configurando iBGP, todos los router poseen el
mismo remote-as 300. Una vez hecho esto en todos los routers, configuramos
el router de frontera con eBGP, el cual debera conocer a los vecinos de su
AS, asi como tambien conocer a sus otros vecinos que son routers de frontera.

conf t
router bgp 300
neighbor xxxx.xxxx.xxxx.xxxx remote-as x
end
wr

Ahora se debe declarar las redes que conocera el router de frontera, las
mismas que permitiran volver alcanzables a los routers de la AS. Se debe
colocar tambien las redes que unen con los routers de frontera.

conf t
router bgp 300
network xxxx.xxxx.xxxx.0 mask xxxx.xxxx.xxxx.xxxx
end
wr

Para verificar que todo esta configurado de manera correcta, se procede


a digitar

sh ip pro

Esto permitira ver los protocolos que funcionan en el router, ası́ como un
breve detalla de los datos que proporciona el mismo.

13
Figure 7: OFPS y BGP

Figure 8: Tabla de enrutamiento OFPS

14
4.6. AS 400 IS-IS

Figure 9: AS 400

IS-IS es algo diferente, ya que luego de levantar cada interface se debe


colocar:

ip router isis

Ahora si, una vez configuradas las IPs de las interfaces con IS-IS, se pro-
cede a configurar el protocolo.

Configure terminal
Router isis
net 49.0002.0000.0000.xxxx.00
Exit
End
wr

En donde los segundos 4 digitos son el identificador de área, luego de esto


es el identificador del dispositivo.

15
Luego configuramos iBGP.

conf t
router bgp 400
neighbor xxxx.xxxx.xxxx.xxxx remote-as 400
end
wr

Esto se repite con cada vecino de la red, se debe colocar el ip que llega al
router vecino, como estamos configurando iBGP, todos los router poseen el
mismo remote-as 400. Una vez hecho esto en todos los routers, configuramos
el router de frontera con eBGP, el cual debera conocer a los vecinos de su
AS, asi como tambien conocer a sus otros vecinos que son routers de frontera.

conf t
router bgp 400
neighbor xxxx.xxxx.xxxx.xxxx remote-as x
end
wr

Ahora se debe declarar las redes que conocera el router de frontera, las
mismas que permitiran volver alcanzables a los routers de la AS. Se debe
colocar tambien las redes que unen con los routers de frontera.

conf t
router bgp 400
network xxxx.xxxx.xxxx.0 mask xxxx.xxxx.xxxx.xxxx
end
wr

Para verificar que todo esta configurado de manera correcta, se procede


a digitar

sh ip pro

Esto permitira ver los protocolos que funcionan en el router, ası́ como un
breve detalla de los datos que proporciona el mismo.

16
Figure 10: IS-IS y BGP

Figure 11: Tabla de enrutamiento IS-IS

17
4.7. Funcionamiento en congunto

Figure 12: Red con multiples AS

A continuación, se procederá a encender todos los router y ver como se


configuran las tablas de enrutamiento, se debe tomar en cuenta que cada AS
posee su propio protocolo de enrutamiento como se dejo evidenciado en las
anteriores imágenes, pero también están configuradas mediante IBGP, solo
los router de frontera tienen comunicación directa con los demás router de
frontera que también hablan eBGP, además solo el router de frontera conoce
las redes internas de su AS. La imagen fue tomada del router 4, el mismo
que pertenece al AS 300. En total se deben conocer un total de 14 accesos
en la tabla de enrutamiento.

18
Figure 13: Red con multiples AS, análisis de resultados de enrutamiento con BGP

En color rosado se puede notar las direcciones de las redes que conectan
los routers de frontera, en verde las IPs de los router de frontera, en rojo
las direcciones del AS 200, en azul las direcciones del AS 300 y en amar-
illo las direcciones del AS 400. Además se puede ver por que ruta se llega
a determinada dirección, claramenete de las que se encuentran conectadas
directamente a R4. En este tipo de enrutamiento se muestran las posibles
rutas, pero de marcan con un ”¿” la mejor ruta, por ejemplo: Para llegar
el router R5 con dirección 55.55.55.55 desde R4, existen dos rutas, una por
40.40.30.1 y otras por 40.40.20.1. Como se ve graficamente, la mejor ruta
seria la que va directamente mediante el enlace 40.40.20.1, la misma que se
muestra como mejor ruta en la tabla de enrutamiento. Tambien se mues-
tra que en el Path que el un camino debe ir por el AS 200 y luego llegar

19
al AS 400, mientras que con la mejor ruta se llega al AS 400 directamente.
En el path nos muestra que AS se debe pasar, para llegar a un destino, y
esto de evidencia en las direcciones del AS 300, que como se vé, no poseen
números, ya que estan en el mismo AS. Además se encuentras los valores de
las métricas y pesos, los mismos que variarán al momento de enviar paquetes
de un punto a otro.

Figure 14: Red con multiples AS, análisis de resultados de enrutamiento con BGP

Se nota claramente como se aprenden las redes internas mediante OSPF


y las externas mediante BGP.

20
4.8. Análisis Wireshark

Figure 15: Tipos de paquetes de BGP

Se puede notar que desde el enlace del router R6 al router R4 existen los
paquetes OSPF del AS 200, ya que con este protocolo fueron configurados.
Además, existe paquetes BGP de 3 diferentes tipos: OPEN, UPDATE y
KEEPALIVE. También se puede notar que BGP utiliza TCP para establecer
las sesiones y para esto se sirve del puerto 179, es el que por defecto viene
configurado. Los paquetes UPDATE, son lo que tienen más tamaño, ya que
en ellos se envı́a la información de la red.

21
Figure 16: Paquete OPEN de BGP

Este mensaje es el primero que se envı́a tras el establecimiento de la


conexión TCP. Su función es la de informar a los vecinos sobre la versión
del protocolo BGP utilizado, el número de AS y el número identificador del
proceso BGP. Además, este mensaje incluye un valor de tiempo durante el
cual se va a mantener la sesión (90 segundos normalmente). Si se indica el
valor 0 significa que la sesión no va a tener lı́mite de duración. Se puede
notar que se encuentra en el AS 300, el identificador BGP es 44.44.44.44,
el puerto utilizado es 179, la versión de BGP y el tipo de mensaje que es,
ademas de parametros opcionales.

22
Figure 17: Paquete UPDATE de BGP

Este mensaje sirve para intercambiar las informaciones de encaminamiento


como las rutas a eliminar, el conjunto de atributos de cada ruta, las informa-
ciones sobre los prefijos de redes accesibles (red y longitud de la máscara) o
NLRI (Network Layer Reachability Information) y la longitud de cada ruta.
Este mensaje se envı́a sólo cuando existe algún cambio y su recepción pro-
duce la activación del proceso BGP, que se encargará entonces de modificar
convenientemente las tablas y de emitir a su vez un mensaje UPDATE hacia
los otros vecinos. Se debe recalcar que el tipo de paquete, puede venir más
de uno a la vez, como se ve en la parte superior derecha, entre más lleguen,
más información existirá de la red. Se utiliza el mismo puerto. En la parte
de NLRI se puede ver ya información de los nodos que dispone al momento.

23
Figure 18: Paquete KEEPALIVE de BGP

Este mensaje sirve como confirmación a un mensaje OPEN. Si el tiempo


que se estableció para la duración de la sesión es limitado, es necesario que los
procesos BGP envı́en este mensaje cada cierto tiempo (30 segundos normal-
mente) para indicar que se mantiene la sesión. De este modo, en el caso de
que no haya modificación de la tabla de encaminamiento, los routers BGP
sólo intercambian este tipo de mensaje de forma periódica, lo cual genera
un tráfico de unos 5bits/s en el nivel BGP (cada mensaje tiene un tamaño
mı́nimo de unos 19 octetos). Este tipo de mensaje no lleva información im-
portante del protocolo BGP, sino que solo determina si un router aun se
encuentra activo o si no se han dado cambio en la red. Es por este motivo
que el tamaño de este paquete es el menor.

24
5. Conclusiones
En esta practica se pudo poner en evidencia todo lo aprendido en clase,
desde cómo se implemente, hasta como es su funcionamiento. Al decirse que
este protocolo permite que se comuniquen distintos AS que hablan diferentes
protocolos de enrutamiento, se podrı́a esperar que solo el router de borde
sea quien necesite conocer el protocolo de enrutamiento propio del AS y
además hablar BGP para su interacción con los otros router de frontera,
pero no es ası́, ya que se necesita configurara todos los routers de las AS con
BGP, cada uno debe conocer las redes vecinas, a diferencia de los routers
de borde que además deben conocer las redes internas del AS ası́ como las
que los unen a los router de frontera. Se evidencia como todos los router
luego de la implementación de la red competa, conocı́an las rutas de toda
la red. Sin embargo, es importante mencionar que BGP luego de 3 saltos
de router, ya no presenta información del router siguiente, es por esto que
se debe configurara para que el router anterior replique las rutas siguientes,
ya que este si tiene esta información, por ello se debe tomar muy en cuenta
la topologı́a de la red. Otra cosa que es importante mencionar, es que aun
cuando se detalle en la tabla de rutas la dirección de un router, puede que
este no sea alcanzable, ya que las redes que llegan al mismo pueden aun no
ser declaradas. Se comprobó que este protocolo si permite la comunicación
en diferentes protocolos de enrutamiento, ya que se configuraron 3 áreas,
cada una de ellas con diferentes protocolos como fueron: RIP, OSPF y IS-IS.
Y las tablas de enrutamiento se crearon mediante BGP de manera correcta.

6. Bibliografı́a
[1] Computer Networking: A Top Down Approach 6th edition Jim Kurose,
Keith RossAddison-WesleyMarch 2012

25

También podría gustarte