Está en la página 1de 47

BGP

CAPITULO II

Mg. Fausto Orozco Lara


BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 1
Agenda
Introducción a BGP
Definición de AS, funcionamiento básico BGP
Jerarquías BGP, tablas BGP
Conexión a internet con BGP
Multihoming
información de enrutamiento desde internet
Sincronización, estado BGP
Configuración de BGP, comandos básicos
Identificando vecinos y definiendo peer-groups
Dirección Ip de origen
forzando la dirección del próximo salto
definiendo las redes que serán anunciadas
Agregación de rutas, autenticación
Verificación de BGP
restablenciendo la vencindad
Atributos BGP
Controlando la selección de caminos BGP
Uso del atributo local-preference, MED, AS-PATH
BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 2
Introducción a BGP
EXTERIOR GATEWAY PROTOCOL (EGP)

• Protocolo de enrutamiento que opera entre diferentes AS

• BGP es un protocolo de enrutamiento interdominio (IDRP) y es un


EGP

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 3
Introducción a BGP
BGP es un protocolo que funciona sobre TCP por el puerto 179,
permite el encaminamiento de los paquetes IP que se intercambian
entre los distintos AS. Es necesario el intercambio de prefijos de
rutas entre los diferentes AS de forma dinámica. Mediante el
establecimiento de sesiones BGP inter-AS sobre conexiones TCP
(Comunicación fiable y esconde todos los detalles de la red por la
que se pasa). Cada AS utiliza un protocolo IGP distinto -> es
IMPOSIBLE encontrar el camino más corto hacia cada destino.
BGP utiliza un algoritmo similar al tipo vector distancia
PATH_VECTOR. Selecciona las rutas que impliquen el mínimo
número de AS a atravesar

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 4
Sistema Autónomo (AS)
Es una red o grupo de redes bajo una administración común y con
unas políticas de routing comunes.

El AS se identifica con un numero de 16 bits, estos números son


asignados por los RIR(Registros regionales). Los valores 64512 al
65535 están reservado para uso privado.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 5
Sistema Autónomo (AS)
Los sistemas autónomos pueden agruparse en tres categorías,
dependiendo de sus conexiones y modo de operación.

SA stub: se conecta únicamente con un sistema autónomo.

SA de tránsito: se conecta con varios sistemas autónomos y


además permite que se comuniquen entre ellos.

SA multihomed: se conecta con varios sistemas autónomos, pero


no soporta el tráfico de tránsito entre ellos.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 6
Funcionamiento básico BGP
El Border Gateway Protocol (BGP) es el sistema que utilizan los
grandes nodos de Internet para comunicarse entre ellos.

Su misión es encontrar el camino más eficiente entre los nodos para


propiciar una correcta circulación de la información en Internet.

BGP usa TCP como el protocolo de transporte

Dos routers cualquiera que formen una conexión TCP para


intercambiar información de enrutamiento BGP son "pares" o
"vecinos e intercambian inicialmente las tablas completas de
enrutamiento BGP.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 7
Funcionamiento básico BGP
Cuando BGP se ejecuta entre routers que pertenecen a dos AS
diferentes, recibe el nombre de BGP externo (eBGP). Cuando BGP
se ejecuta entre routers del mismo AS, recibe el nombre de iBGP.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 8
Jerarquía BGP
El Encaminamiento Basado en jerarquías proporciona al
administrador la capacidad de definir cómo será enrutado el tráfico a
través del AS.

BGP puede implementar reglas asociadas con el paradigma salto a


salto afectando el path completo.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 9
Cuando usar BGP
Un router BGP da a conocer sus direcciones IP a los routers BGP y
esta información se difunde por los routers BGP cercanos y no tan
cercanos. BGP tiene sus propios mensajes entre routers, no utiliza
RIP.

BGP es usado por grandes proveedores de conectividad a internet

No es recomendable utilizar BGP cuando el ISP y la organización


tienen la misma política de routing.

Tampoco cuando existen recursos limitados, como CPU o memoria


en los routers o cuando el ancho de banda en el AS es bajo

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 10
Tablas BGP
Las tablas de BGP contienen una lista de rutas que pueden ser
anunciadas a los vecinos BGP, siempre respetando la regla anterior.

Para comprobar la tabla de rutas, se utiliza en comando show ip


bgp.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 11
Tablas BGP
En la salida del comando podemos apreciar lo siguientes aspectos:

La ruta se ha inyectado en BGP usando el comando network.

El siguiente salto (0.0.0.0) indica que la ruta se originó localmente en


BGP. El IGP correspondiente se encargará de resolver el envío del
paquete al router correspondiente dentro del AS local para llegar a
dicha red. El 0.0.0.0 solo se puede dar en 3 casos: Prefijo
directamente conectado, se esta redistribuyendo o se esta
sumarizando.

El parámetro path está vacío ya que la ruta se originó en el mismo


AS al que pertenece RouterB.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 12
Tablas BGP
El código "*>" significa lo siguiente:

* indica que la ruta es válida (está presente en la tabla de rutas)

> indica que es la mejor ruta hacia el destino.

BGP no anunciará una ruta a un vecino eBGP hasta que la ruta sea
válida y además sea la mejor ruta hacia su destino.

Una de las condiciones que BGP pone para iBGP es que los vecinos
dentro de un AS deben tener topología de maya completa.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 13
Tablas BGP
route-reflector es un servicio que permite el tránsito de
notificaciones GBP entre nodos que no están el maya completa.

El router RouterA actúa como route-reflector server.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 14
Conexión a internet con bgp Multihoming
Multihoming se define como la conexión de un AS a más de un ISP
a la vez. La forma más común de implementar multihoming es
obtener un bloque de direcciones independientes del proveedor
junto con un número de sistema autónomo

Si a un sitio no le es posible hacer multihoming con direcciones


independientes del proveedor aún le es posible obtener un bloque
de direcciones de uno de los ISPs que le prestan servicio.

El AS cliente anuncia su bloque de direcciones por BGP a todos los


ISPs, los cuales a su vez lo anuncian hacia Internet

Otra forma de multihoming muy utilizada como la traducción de


direcciones de red (NAT).
BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 15
Conexión a internet con bgp Multihoming
Según el número de conexiones con otros sistemas autónomos y las
políticas definidas, un sistema autónomo puede ser de diferentes
tipos:

Stub AS (AS cliente): Tiene una única conexión con otro AS, que
será normalmente su ISP (Internet Service Provider). Por este
sistema autónomo únicamente circula tráfico local

Multihomed AS (AS cliente): Tiene más de una conexión a otros


sistemas por motivos de redundancia.

AS de tránsito (ISP): Tiene varias conexiones, pero sólo se


encarga de reenviar el tráfico de una conexión a otra aplicándole
una serie de restricciones mediante la política de encaminamiento
BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 16
Sincronización
BGP tiene una regla para la sincronización:

Todos los routers de una red de tránsito, incluyendo los routers no


BGP, deben aprender todas las rutas hacia las redes de los demás
AS's

Si un router no conoce una ruta hacia la red, descartará el paquete.


Por eso, aunque este no sea un router BGP, debe conocer las rutas
hacia redes de los AS externos.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 17
Sincronización
La sincronización BGP puede desactivarse en determinadas
circunstancias:

El AS local no es una red de tránsito

Los routers en la red de tránsito ejecutan iBGP y tienen una


topología de maya completa.

Para desactivar la sincronización BGP:

RouterD(config)# router bgp 200

RouterD(config-router)# no synchronization

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 18
Estado BGP
BGP intercambia mensajes con sus vecinos, que son los siguientes:
OPEN inicia una sesión entre vecinos (BGP utiliza TCP como
protocolo de transporte). Los parámetros intercambiados son:
Versión BGP
ASN local
ID del router
KEEPALIVE es enviado periódicamente (cada 60 s.) para
asegurarse de que un vecino está disponible. Si el router no recibe
un mensaje KEEPALIVE en un periodo Hold-time (180 s.), el router
considera que el vecino correspondiente está caído
UPDATE intercambia rutas entre vecinos
NOTIFICATION se envía cuando hay una condición de error.
Cuando se envía este mensaje, la sesión se cierra y se reinicia.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 19
Estado BGP
Una sesión BGP entre vecinos pasa por varios estados:

Idle es el estado inicial

Connect espera una conexión TCP de un vecino.

Si la conexión se lleva a cabo con éxito, se envía un mensaje OPEN.

Si la conexión no se completa, la sesión pasa al estado Active

Active es un estado en el que BGP trata de iniciar una sesión.

Si la conexión se lleva a cabo con éxito, se envía un mensaje OPEN

Si la conexión no se completa dentro de un periodo Connect Retry,


BGP pasa de nuevo al estado Connect

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 20
Estado BGP
OpenSent indica que ambos vecinos han establecido una conexión
TCP, y han intercambiado un mensaje OPEN. Los vecinos están a la
espera de una respuesta al mensaje OPEN. En el momento en que
un vecino reciba un mensaje OPEN enviará un mensaje
KEEPALIVE.

OpenConfirm indica que los vecinos están a la espera de una


respuesta al mensaje KEEPALIVE.

Established indica que la sesión ha sido establecida. Los mensajes


UPDATE se intercambiarán en este estado para el intercambio de
información.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 21
Comandos Básicos
Router bgp <numero de proceso BGP> 65000:

Número de proceso BGP que se pone 65000, para entorno de


pruebas.

no synchronization

Es posible desactivar la sincronización de BGP para acelerar el


proceso de convergencia. Esto sólo se puede hacer si el AS no es
de transito o si todos los routers corren BGP.

bgp router-id 10.39.179.16

Es la dirección IP que se utilizará como identificador del EDC en el


dominio BGP. Se recomienda usar la IP asociada a la gestión del
EDC.
BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 22
Comandos Básicos
bgp log-neighbor-changes

El bgp log-neighbor-changes habilita el registro de cambios de BGP


vecino estado (activo o inactivo), soluciona problemas de
conectividad de red y la medición de la estabilidad de la red.
network 10.39.179.16 mask 255.255.255.255

Corresponde a la ip de gestión del EDC.

- network 192.168.28.0 Red publicada en la RED CLIENTE.

- network 192.168.180.0 Red correspondiente al rango LAN del


cliente.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 23
Identificando vecinos y definiendo Peer-
groups

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 24
Identificando vecinos y definiendo Peer-
groups
Mediante el comando router bgp 100, pertenece al AS 100. Para
establecer los vecinos se debe ingresar los comandos.

RouterB(config)# router bgp 100

RouterB(config-router)# neighbor 10.1.1.1 remote-as 100

Si deseamos que haya autenticación entre vecinos, podemos indicar


una contraseña al registrar un vecino:

RouterB(config)# router bgp 100

RouterB(config-router)# neighbor 172.16.1.2 password redes4

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 25
Identificando vecinos y definiendo Peer-
groups
Si lo que queremos es ver el estado de un determinado vecino,
ejecutaremos el comando: show ip bgp neighbors

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 26
Limpieza de sesiones BGP
Hard reset:

El peer regresa al estado de IDLE, todo se reinicia

R # clear ip bgp [* | Neighbor-Address]

Es cuando quiere reiniciar todo de un vecino, es decir borrar toda su


configuración o darle de baja incluso cerrando la sesión TCP que se
genero.

Pierde todo los prefijos que han aprendido, lo cual llevara mucho
tiempo hasta aprender nuevamente.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 27
Limpieza de sesiones BGP
Refresh

Se solicita al vecino el reenvío de información sin botar la sesión o


se le reenvía la información al vecino sin botar la sesión

R # clear ip bgp [* | Neighbor-Address]soft [in |out]

Consiste en decir al vecino que me reenvié su información sin botar


la vecindad sin borrar todo lo que tengo me enviara su actualización
y se comparo que es lo que viene de nuevo, que se puede agregar
o que se puede quitar si esta obsoleto.

soft in ----solicito que mi vecino me reenvié su actualización

soft out ----envio actualizar a mi vecino sin botar la adyacencia


BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 28
Limpieza de sesiones BGP
Soft reset

Nos ayuda a no solicitar información al vecino cada vez que


necesitemos una actualización. La actualización que envía el vecino
se guarda en una tabla secundaria donde se almacenaran sin
cambios y estará disponible en el momento en que se quieran
actualizar.

R(config-route)#neighbor{ip-Address}soft-reconfiguration inbound

R # clear ip bgp [* | Neighbor-Address]soft in

En el caso que necesite actualizaciones de mi vecino pero no quiero


andar pidiéndole las mismas. La actualización se guarda en
memoria. Muy usado en ventana de mantenimiento.
BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 29
Sesiones eBGP
Reglas Generales

La dirección IP del siguiente salto para cada prefijo se mantiene


desde el router que origino ese anuncio

Las sesiones eBGP por defecto se establecen utilizando la Ip física


de las interfaces directamente conectadas lo que causara
inconvenientes cuando implementamos enlaces redundantes

Por protección de seguridad las sesiones eBGP admiten por defecto


una TTL de 1

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 30
Forzando el próximo salto
Las redes que conozca el router de borde vía BGP las anunciara a
sus vecinos dentro de su sistema autónomo con la dirección IP del
neighbor externo.

Si la ruta establecida no es el mejor destino, existen dos soluciones:

- La ruta es añadida manualmente y el campo de Next-Hop se


ajustara automáticamente.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 31
Forzando el próximo salto
- La segunda opción es ingresar los siguientes comandos:

RouterB(config)# router bgp 200

RouterB(config-router)# neighbor 10.1.1.1 next-hop-self

RouterB(config-router)# neighbor 10.2.1.2 next-hop-self

De este modo, RouterB informa de que él es el siguiente salto para


las rutas eBGP aprendidas

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 32
Definiendo las redes que serán anunciadas
Hay tres formas de anunciar redes en BGP

Usar sentencias network

Usar sentencias aggregate-address

Redistribuir un IGP dentro de BGP

Sin embargo, cada ruta anunciada debe estar en la tabla de rutas


antes de que BGP anuncie la red a un vecino eBGP.

Un ejemplo de anuncia rutas son los siguientes comandos

RouterB(config)# router bgp 100


RouterB(config-router)# network 10.1.1.0 mask 255.255.0.0
RouterB(config-router)# network 172.16.1.0 mask 255.255.0.0
BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 33
Autenticación
BGP soporta Message disgest 5 para la autenticación de sus
vecinos. Para autenticar BGP, ambos vecinos deben poseer la
misma configuración (contraseña) y su respectiva dirección IP del
vecino.

Para autenticar un vecino se debe ingresar la siguiente configuración


en BGP:
Ejemplo: RouterA#Neighbor dirección ip password contraseña.

La autenticación básica no lo provee directamente BGP, sino que es


TCP el encargado de hacerlo y la protección de sesiones a través de
TCP usando MD5.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 34
Verificación de BGP reestableciendo la
vecindad
BGP no funciona igual que los otros protocolos de enrutamiento IGP,
y exige primero identificar quiénes serán sus vecinos.

Dentro de un sistema autónomo se pueden generar Neighbors, a


pesar de que estos no se encuentren directamente
conectados.(IBGP)

Solo el router borde puede generar vecindad con el router


perteneciente al otro sistema autónomo (EBGP)

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 35
Atributos BGP
Los routers BGP envían mensajes update sobre redes, con sus
respectivos prefijos y atributos

Los atributos pueden ser:

Well-known / optional
Mandatory / discretionary
Transitive / nontransitive
Los atributos de ruta se dividen en cuatro categorías:
Well-known mandatory
Well-known discretionary
Optional transitive
Optional nontransitive

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 36
Atributos BGP

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 37
Atributos BGP
Los atributos definidos por BGP son los siguientes:

Origin—Type code 1 identifica al router que originó la ruta.

AS-path—Type code 2 identifica la lista de AS atravesados para


alcanzar un destino concreto.

Next-hop—Type code 3 identifica la siguiente dirección IP para


alcanzar un destino.

MED—Type Code 4 (opcional) Multi-Exit-Discriminator permite elegir


entre los diferentes routers directamente conectados mediante
eBGP

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 38
Atributos BGP
Local-preference—type code 5 (opcional) proporciona una
preferencia para determinar el mejor camino para el tráfico de salida.

Atomic-aggregate—type code 6 (opcional) identifica rutas


sumarizadas.

Wight (propietario de Cisco) asignado administrativamente.

Aggregator—Type code 7

Community—Type code 8 (Cisco-defined)

Originator-ID—Type code 9 (Cisco-defined)

Cluster list—Type code 10 (Cisco-defined)

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 39
Controlando la selección de caminos BGP
Esta lista proporciona las reglas que se utilizan para determinar el
mejor trayecto:

1. Preferir el trayecto que tenga el mayor WEIGHT.


2. Preferir el trayecto con el mayor LOCAL_PREF.
3. Preferir el trayecto que se ha originado localmente a través del
subcomando de BGP network o aggregate o mediante una
redistribución de un IGP.
4. Preferir el trayecto que tenga el AS_PATH más corto.
5. Preferir el trayecto con el tipo de origen más corto.
6. Preferir el trayecto con el discriminador de salidas múltiples
(MED) más bajo.
7. Preferir los trayectos eBGP sobre los trayectos iBGP.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 40
Controlando la selección de caminos BGP
8. Preferir el trayecto que tenga la métrica IGP más baja al salto
siguiente (next hop) BGP.
9. Determinar si es preciso instalar varios trayectos en la tabla de
ruteo para BGP Multipath (varios trayectos BGP)
10. Cuando ambos trayectos son externos, preferir el trayecto que
se recibió primero (el más antiguo).
11. Preferir la ruta que viene del router BGP con el ID de router más
bajo.
12. Si el ID originador o el ID del router es el mismo para varios
trayectos, prefiera el trayecto con una longitud de lista de
agrupamiento mínima.
13. Preferir el trayecto que viene de la dirección vecina más
pequeña.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 41
Uso del atributo Local-preference
Una forma de configurar múltiples defectos estáticos es señalar
hacia una red aprendida a través de múltiples conexiones y
establecer un grado de preferencia utilizando el atributo local
preference.

Local-Preference se utiliza para determinar cuál es la salida


preferida en el sistema autónomo. Cuando el Local Preference es
más alto, posee mayor prioridad, por lo tanto, es mejor.

Este atributo es enviado solo entre peers IBGP dentro del mismo
sistema autónomo local

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 42
Uso del atributo Local-preference
Ejemplo

RouterB(config)# router bgp 100


RouterB(config-router)# bgp default local-preference 200
RouterD(config)# router bgp 100
RouterD(config-router)# bgp default local-preference 300

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 43
Uso del atributo MED
Este atributo informa a los vecinos externos por cuál de las salidas
del sistema autónomo local se prefiere que sean alcanzadas las
redes locales, en otras palabras, cual es la entrada preferida a la red

El menor valor MED es el preferido, por lo tanto, posee mayor


prioridad. Este atributo es enviado entre los vecinos EBGP y por
defecto es 0.

Este atributo es optional nontransitive attribute.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 44
Uso del atributo AS-PATH
Es un atributo bien conocida obligatoria (código tipo 2). Es la
secuencia de números de AS que una ruta ha atravesado para llegar
hasta un destino. El AS que origina la ruta agrega su propio número
de AS al enviar la ruta a sus peers BGP externos

BGP utiliza el atributo AS_path como parte de las actualizaciones de


enrutamiento para asegurar una topología libre de bucles en la
Internet.

La información de AS_path es uno de los atributos que observa BGP


para determinar la mejor ruta a tomar para llegar a un destino.

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 45
Uso del atributo AS-PATH

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 46
Preguntas

BSCI Module 5 © 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 47

También podría gustarte