Está en la página 1de 56

Implementación de BGP (Border Gateway Protocol)

Terminología, conceptos y funcionamiento de BGP


 Usando BGP entre sistemas autónomos
 Comparación de BGP con otros protocolos de enrutamiento escalables
 Características del vector de ruta BGP
 Características de BGP
 Tablas BGP
 Tipos de mensajes BGP
 Cuando usar BGP
 Cuando no usar BGP

Uso de BGP entre sistemas autónomos


 El enrutamiento entre dominios de BGP permite la conectividad entre sistemas
autónomos.
 Suele basarse en un conjunto de políticas, no solo en las características
técnicas de la infraestructura subyacente.

Comparación con otros protocolos de enrutamiento escalables


 BGP es también un protocolo de vector de distancia, con muchas
mejoras; generalmente se denomina protocolo de vector de ruta.
 BGP no busca en el ancho de banda la mejor ruta.
 BGP es un protocolo de enrutamiento basado en políticas que permite que un
sistema autónomo controle el flujo de tráfico utilizando múltiples atributos de
BGP.

Características del vector de ruta BGP

 Los enrutadores BGP intercambian información de accesibilidad de la red,


denominada vectores de ruta, formada por atributos de ruta

 La información de la ruta del sistema autónomo se utiliza para construir un


gráfico de sistemas autónomos sin bucles.

Para que AS 64512 llegue a redes en AS 64700 a AS 64520, algunas rutas


posibles son:
 64520 64600 64700
 64520 64600 64540 64550 64700
 64520 64540 64600 64700
 64520 64540 64550 64700
El sistema autónomo 64512 no ve todas estas posibilidades. AS 64520 solo
anuncia su ruta de apuestas
Características de BGP
 BGP utiliza el Protocolo de control de transmisión (TCP) como su protocolo de
transporte. Número de puerto 179.
 Una vez realizada la conexión TCP, los enrutadores intercambian sus tablas
BGP completas.
 Debido a que la conexión es confiable, los enrutadores BGP necesitan enviar
solo cambios (actualizaciones incrementales) después de eso.
 TCP está diseñado para utilizar una ventana deslizante.
 Este método permite que cualquier aplicación TCP, como BGP, continúe
transmitiendo paquetes sin tener que detenerse y esperar, como OSPF o
EIGRP.
Tablas BGP
BGP mantiene una tabla de vecinos, que contiene una lista de “vecinos” con los
que tiene una conexión BGP.
Un enrutador que ejecuta BGP también mantiene su propia tabla para almacenar
la información de BGP recibida y enviada a otros enrutadores.
 Tabla BGP
 Tabla de topología BGP
 Base de datos de topología BGP
 Tabla de enrutamiento BGP
 Base de datos de reenvío BGP.

 El enrutador ofrece las mejores rutas desde la tabla BGP a la tabla de


enrutamiento IP.
 Se pueden configurar para compartir información entre las dos tablas (por
redistribución).
 Para que BGP establezca una adyacencia, debe configurarla explícitamente
para cada vecino.
 BGP envía keepalives BGP / TCP de forma predeterminada cada 60 segundos.
 Después de establecer una adyacencia, los vecinos intercambian sus mejores
rutas BGP.
 Todas las rutas que se han aprendido de cada vecino se colocan en la tabla
BGP.
 Cada ruta aprendida está asociada con atributos BGP.
 La mejor ruta para cada red se selecciona de la tabla BGP usando estos
atributos en el proceso de selección de ruta BGP y luego se ofrece a la tabla de
enrutamiento IP.
 Cada enrutador compara las rutas BGP ofrecidas con cualquier otra ruta posible
a esas redes en su tabla de enrutamiento IP, y la mejor ruta, basada en la
distancia administrativa, se instala en la tabla de enrutamiento IP.
 Las rutas BGP externas (eBGP) (rutas BGP aprendidas de un sistema
autónomo externo) tienen una distancia administrativa predeterminada de 20.
 Las rutas internas BGP (iBGP) (rutas BGP aprendidas desde dentro del sistema
autónomo) tienen una distancia administrativa predeterminada de 200.
 Nota: No es necesario que una ruta esté en la tabla de enrutamiento IP para
que BGP la anuncie. BGP anuncia la mejor ruta desde la tabla BGP.
Tipos de mensajes BGP
BGP define los siguientes tipos de mensajes:
 Open
 Keepalive
 Update
 Notification

Mensajes Open y Keepalive

 Después de que se establece una conexión TCP, el primer mensaje enviado por
cada lado es un mensaje Open.
 Cuando se confirma la apertura, se establece la conexión BGP y se pueden
intercambiar mensajes de update, Keepalive y Notification.
 Los paquetes Keepalive se envían para garantizar que la conexión esté activa
entre los pares BGP.
 Los paquetes de Notification se envían en respuesta a errores o condiciones
especiales.

Un mensaje Open incluye la siguiente información:


 Version: este campo de 8 bits indica el número de versión de BGP del
mensaje. (BGP-4).
 My autonomous system: este campo de 16 bits indica el número de sistema
autónomo del remitente.
 Hold time: este campo de 16 bits indica el número máximo de segundos que
pueden transcurrir entre los mensajes de actualización o keepalive sucesivos
del remitente.
 BGP router identifier (router ID) este campo de 32 bits indica el identificador
de BGP del remitente. Elegido de la misma forma que OSPF ID.
 Optional parameters: un campo de longitud indica la longitud total del campo de
parámetros opcionales en octetos.

Mensajes Update
Un mensaje de Update (actualización) tiene información en una sola ruta. múltiples rutas
requieren múltiples mensajes.

Todos los atributos en el mensaje de actualización se refieren a esa ruta, y las


redes son aquellas a las que se puede llegar a través de esa ruta.
Un mensaje de actualización puede incluir los siguientes campos:
 Rutas retiradas : una lista de prefijos de direcciones IP para las rutas que se
están retirando del servicio, si corresponde.
 Atributos de ruta : el tipo de atributo consta de las banderas de atributo,
seguidas del código de tipo de atributo.
 Network layer reachability information (NLRI): una lista de redes (prefijos
de dirección IP y sus longitudes de prefijo) a las que se puede acceder mediante
esta ruta.
Mensajes notification
 Un enrutador BGP envía un mensaje de notificación cuando detecta una
condición de error.
 El enrutador BGP cierra la conexión BGP inmediatamente después de enviar el
mensaje de notificación.
 Los mensajes de notificación incluyen un código de error, un subcódigo de error
y datos relacionados con el error.

Cuándo usar BGP


El uso de BGP en un sistema autónomo es más apropiado cuando los efectos de
BGP se comprenden bien y existe al menos una de las siguientes condiciones:
 El sistema autónomo permite que los paquetes transiten por él para llegar a
otros sistemas autónomos (por ejemplo, es un proveedor de servicios).
 El sistema autónomo tiene múltiples conexiones con otros sistemas autónomos.
 Se debe manipular la política de enrutamiento y la selección de rutas para el
tráfico que entra y sale del sistema autónomo.

Cuándo no usar BGP


No use BGP si existe una o más de las siguientes condiciones:
 Una única conexión a Internet u otro sistema autónomo.
 Falta de memoria o potencia del procesador en los enrutadores de borde para
manejar actualizaciones constantes de BGP.
 Tiene un conocimiento limitado del filtrado de rutas y el proceso de selección de
rutas de BGP.
 Si la política de enrutamiento que se implementará en un sistema autónomo es
consistente con la política implementada en el sistema autónomo ISP.

Implementación de BGP básico

 Relaciones con los vecinos de BGP


 Requisitos básicos de configuración de BGP
 Ingresando al modo de configuración BGP
 Definición de vecinos BGP y activación de sesiones BGP
 Configuración y verificación básica de BGP

Relaciones de vecinos de BGP


 Un peer BGP, también conocido como vecino BGP, es un “hablante” BGP que
está configurado para formar una relación de vecino con otro “hablante” BGP
con el fin de intercambiar directamente información de enrutamiento BGP entre
sí.
 Un “hablante” BGP tiene un número limitado de vecinos BGP con los que se
empareja y forma una relación basada en TCP.

Vecinos externos de BGP


 Cuando BGP se ejecuta entre enrutadores en diferentes sistemas autónomos,
se denomina BGP externo.
 Los enrutadores que ejecutan eBGP generalmente están conectados
directamente entre sí.
 Un vecino eBGP es un enrutador que se ejecuta en un sistema autónomo
diferente.
 Para que dos enrutadores intercambien actualizaciones de enrutamiento BGP,
la capa de transporte TCP en cada lado debe pasar con éxito el protocolo de
enlace de tres vías de TCP.
 Por lo tanto, la dirección IP usada en el comando de neighbor debe ser
accesible sin usar un IGP.
 Nota Si un vecino BGP no está conectado directamente, un enrutador debe
tener una ruta a la dirección del vecino instalada en su tabla de
enrutamiento; una ruta predeterminada no es suficiente para este uso.
Vecinos internos de BGP
Cuando BGP se ejecuta entre enrutadores dentro del mismo sistema autónomo,
se denomina BGP interno.
Hay varios requisitos para una relación de vecino iBGP:
 Mismo número de sistema autónomo
 Definir vecinos
 Accesibilidad (un IGP normalmente se ejecuta dentro del sistema autónomo y
proporciona esta accesibilidad).

Los enrutadores que ejecutan iBGP no tienen que estar conectados directamente
entre sí.
Por lo general, se usa una dirección de bucle de retorno en el comando
de neighbor BGP para establecer las sesiones de iBGP.
iBGP en un sistema autónomo de tránsito
 Todos los enrutadores de un sistema autónomo de tránsito deben tener un
conocimiento completo de las rutas externas.
 En teoría, una forma de lograr este objetivo es redistribuir las rutas BGP en un
IGP en los enrutadores de borde.
 Debido a que la tabla de enrutamiento de Internet actual es muy grande
(alrededor de 500K), la redistribución de todas las rutas BGP en un IGP no es
una forma escalable para los enrutadores interiores.
 Otro método que puede utilizar es ejecutar iBGP en todos los enrutadores
dentro del sistema autónomo.

iBGP en un sistema autónomo sin tránsito


 Un sistema autónomo sin tránsito, como una organización que tiene un
alojamiento múltiple con dos ISP, no pasa rutas entre los ISP.
 Sin embargo, para tomar decisiones de enrutamiento adecuadas, los
enrutadores BGP dentro del sistema autónomo aún requieren el conocimiento
de todas las rutas BGP pasadas al sistema autónomo.
TCP y malla completa
 Se seleccionó TCP como la capa de transporte para BGP porque TCP puede
mover un gran volumen de datos de manera confiable.
 Las sesiones de TCP no pueden ser de broadcast or multicast porque TCP
debe garantizar la entrega de paquetes a cada destinatario.
 Debido a que TCP no puede usar broadcasting or multicasting ,BGP
tampoco puede usarlo.
 Para evitar bucles de enrutamiento dentro de un sistema autónomo, BGP
especifica que las rutas aprendidas a través de iBGP nunca se propagan a otros
pares de iBGP.
 Esto a veces se denomina regla de horizonte dividido de BGP.
 Por lo tanto, cada enrutador iBGP necesita enviar rutas a todos los demás
vecinos iBGP en el mismo sistema autónomo.
 Para que todos tengan una imagen completa de las rutas enviadas al sistema
autónomo.
 Debido a que no pueden usar difusión o multidifusión, se debe configurar una
relación de vecino iBGP entre cada par de enrutadores.
 Si el vecino iBGP emisor no está completamente interconectado con cada
enrutador iBGP, los enrutadores que no están emparejando con este enrutador
tendrán tablas de enrutamiento IP diferentes a las de los enrutadores que están
emparejando con él.

Ejemplos de malla parcial y malla completa de BGP

Requisitos básicos de configuración de BGP


La configuración básica de BGP requiere los siguientes pasos principales:
 Paso 1. Defina el proceso BGP.
 Paso 2. Establezca las relaciones con los vecinos.
 Paso 3. Anuncie las redes en BGP.

Entrar en el modo de configuración de BGP


 Utilice el comando de configuración global router bgp autonomous-system
del router para ingresar al modo de configuración BGP e identificar el sistema
autónomo local al que pertenece este enrutador.
 El comando router bgp por sí solo no activa BGP en un router.
 Debe ingresar al menos un subcomando en el router bgp para activar el
proceso BGP en el router.
 Solo se puede configurar una instancia de BGP en un enrutador a la vez.

Definición de vecinos de BGP y activación de sesiones de BGP

Utilice el comando de configuración del enrutador “neighbor ip-


address remote-as autonomous-system”

 para activar una sesión BGP para vecinos externos e internos y


 para identificar un enrutador par con el que el enrutador local establecerá una
sesión.

La dirección IP debe ser accesible.

El campo del sistema autónomo determina si la comunicación con el par es una


sesión de eBGP o iBGP.

Configuración del Router 1

Configuración del Router 1

Configuración del Router 2


Configuración del Router 3

Configuración y verificación básica de BGP

La primera parte del resultado del comando show ip bgp summary describe el
enrutador local:

 Identificador de enrutador BGP: la dirección IP que todos los demás


“hablantes” BGP reconocen como representación de este enrutador.
 Número de AS local: el número de sistema autónomo del enrutador local.
La siguiente parte de la salida de este comando describe la tabla BGP:
 BGP table version (Versión de la tabla BGP): este es el número de versión
de la tabla BGP local; aumenta cuando cambia la tabla BGP.
 Main routing table version (Versión de la tabla de enrutamiento
principal): esta es la última versión de la base de datos BGP que se inyectó en
la tabla de enrutamiento principal.

El resto de la salida de este comando describe el estado actual del vecino, uno
para cada vecino configurado:
 neighbor: La dirección IP, utilizada en la declaración de neighbor, con la que
este enrutador está estableciendo una relación.
 Version (V): la versión de BGP que este enrutador está ejecutando con el
vecino listado.
 AS: Número de sistema autónomo del vecino listado.
 Mensajes recibidos (MsgRcvd): la cantidad de mensajes BGP recibidos de
este vecino.
 Mensajes enviados (MsgSent): la cantidad de mensajes BGP enviados a este
vecino.
 TblVer: la última versión de la tabla BGP que se envió a este vecino.
 En cola (InQ): la cantidad de mensajes de este vecino que están esperando ser
procesados.
 Cola de salida (OutQ): la cantidad de mensajes en cola y en espera de ser
enviados a este vecino. El control de flujo de TCP evita que este enrutador
abrume a un vecino con una gran actualización.
 Up / Down: la cantidad de tiempo que este vecino ha estado en el estado actual
de BGP (establecido, activo o inactivo).
 State: el estado actual de la sesión BGP : Active (activo), inactivo (Idle),
openSent (abierto y enviando), open confirm (abierto confirmado) o inactivo
(Idle) (administrador).
 Tenga en cuenta que, si la sesión está en el estado established (establecido),
no se muestra ningún estado.
 Prefijo recibido (PfxRcd): cuando la sesión está en el estado establecido, este
valor representa el número de entradas de red BGP recibidas de este vecino.
Configuración y verificación de una sesión iBGP
 Utilice el comando de configuración del enrutador network network-
number [ mask network-mask ] para inyectar rutas que están presentes en la
tabla de enrutamiento IPv4 en la tabla BGP para que puedan anunciarse en
BGP.
 A diferencia de los IGP, el comando de network no inicia BGP en interfaces
específicas.
 Más bien, le indica a BGP qué redes debe originarse desde este enrutador.
 La lista de comandos de network debe incluir todas las redes de su sistema
autónomo que desea anunciar, no solo aquellas conectadas localmente a
su enrutador.
 Si no se especifica el parámetro de mask (opcional) , este comando solo
anuncia el número de red con clase.
 Al menos una subred de la red principal especificada debe estar presente en la
tabla de enrutamiento IP.
 Sin embargo, si especifica la mask network-mask, debe existir una coincidencia
exacta con la red (tanto la dirección como la máscara) en la tabla de
enrutamiento para que se anuncie la red.
 Puede forzar que una ruta esté presente en la tabla de enrutamiento
apuntándola a nulo 0:
 ruta ip 172.16.0.0 255.255.0.0 nulo 0

 Una fila con un asterisco (*) en la primera columna significa que la dirección del
siguiente salto es válida.
 Un signo mayor que ( > ) en la segunda columna indica la mejor ruta para una
ruta seleccionada por BGP. Esta ruta se ofrece a la tabla de enrutamiento IP.
Uso de la función Next-Hop-Self
 La forma en que BGP establece una relación iBGP difiere significativamente de
la forma en que se comportan los IGP.
 Un protocolo interno, como RIP, EIGRP u OSPF, siempre usa la dirección IP de
origen de una actualización de enrutamiento como la dirección del siguiente
salto para cada red.
 Recuerde que BGP enruta el sistema autónomo por sistema autónomo, no
enrutador por enrutador, y el siguiente salto predeterminado es el siguiente
sistema autónomo.
 Como tal, para BGP, el siguiente salto es la dirección IP que se utiliza para
llegar al siguiente sistema autónomo.
 Para iBGP, sin embargo, el siguiente salto anunciado por eBGP se lleva a iBGP,
de forma predeterminada.
 A veces es necesario anular el comportamiento predeterminado de un enrutador
y obligarlo a anunciarse como la dirección del siguiente salto para las rutas
enviadas a un vecino.
 El comando de configuración neighbor ip-address next-hop-self le permite
forzar a BGP a usar la dirección IP de origen de la actualización como el
siguiente salto para cada red que anuncia al vecino.
Comprensión y resolución de problemas de los estados vecinos de BGP

Una vez que se completa el protocolo de enlace de TCP, la aplicación BGP intenta
establecer una sesión con el vecino.
BGP es una máquina de estado que lleva a un enrutador a través de los siguientes
estados con sus vecinos:
 Idle: el enrutador está buscando en la tabla de enrutamiento para ver si existe
una ruta para llegar al vecino.
 Conect: el enrutador encontró una ruta al vecino y completó el protocolo de
enlace TCP de tres vías.
 Open sent: Se envió un mensaje open, con los parámetros para la sesión
BGP.
 Open confirm: el enrutador recibió un acuerdo sobre los parámetros para
establecer una sesión.
 Alternativamente, el enrutador pasa al Active State si no hay respuesta al
mensaje abierto.
 Established: se establece el intercambio de tráfico y comienza el enrutamiento.

Solución de problemas de estado idle


El estado inactivo indica que el enrutador no sabe cómo llegar a la dirección IP
que aparece en la declaración de neigbhor.
Compruebe las dos condiciones siguientes para solucionar este problema:
 Asegúrese de que el vecino anuncie la ruta en su protocolo de enrutamiento
local (IGP) (para vecinos iBGP).
 Verifique que no haya ingresado una dirección IP incorrecta en la declaración
de neigbhor.

Solución de problemas de e Active State


 Este estado significa que el enrutador ha encontrado la dirección IP en
la declaración de neigbhor y ha creado y enviado un paquete abierto BGP pero
no ha recibido una respuesta (un paquete de confirmación abierta) del vecino.
 Una causa común de esto es cuando el vecino no tiene una ruta de retorno a la
dirección IP de origen.
 Otro problema común asociado con el estado activo es cuando un enrutador
BGP intenta emparejarse con otro enrutador BGP que no tiene una declaración
de neigbhor mirando hacia atrás en el primer enrutador (o está mal
configurado).
 Si el estado alterna entre inactivo y activo, es posible que los números del
sistema autónomo estén mal configurados.

Resiliencia de la sesión BGP


 Si la interfaz a la que la dirección IP utilizada en el neigbhor comando baja, la
relación de vecino BGP se perdería.
 En los casos en los que existen múltiples rutas para llegar a los enrutadores
vecinos iBGP, los enrutadores podrían emparejarse con la dirección de la
interfaz de bucle de retorno de cada uno.
 Esta disposición de emparejamiento agrega resistencia a las sesiones de iBGP
porque no están vinculadas a una interfaz física, que puede fallar por diversas
razones.
 Ambos enrutadores deben tener una ruta a la dirección de bucle de retorno del
otro vecino en su tabla de enrutamiento; Verifique para asegurarse de que
ambos enrutadores estén anunciando sus direcciones de loopback en el IGP.
 La declaración de neighbor, le dice al proceso BGP la dirección IP de destino
de cada paquete de actualización.
 El enrutador debe decidir qué dirección IP usar como dirección IP de origen en
la actualización de enrutamiento BGP.
 La tabla de enrutamiento enumera la interfaz adecuada para llegar a la dirección
de destino. La dirección de esta interfaz de salida se utiliza como la dirección de
origen de ese paquete de forma predeterminada.
 Para paquetes BGP, esta dirección IP de origen debe coincidir con la dirección
en la declaración de neighbor correspondiente en el otro enrutador.
 En otras palabras, el otro enrutador debe tener una relación BGP con la
dirección IP de origen del paquete).
 BGP no acepta actualizaciones no solicitadas; debe ser consciente de todos los
enrutadores vecinos y tener una declaración de neighbor para ello.

Obtención de BGP a partir de la dirección de bucle invertido

 En este caso, R2 y R3 no establecen la sesión BGP porque, a pesar de las


direcciones IP vecinas correctas, cada enrutador espera que los paquetes BGP
se originen a partir de la dirección loopback 0 del otro par.
 Debe indicarle a BGP que utilice una dirección de interfaz de bucle invertido en
lugar de una dirección de interfaz física como dirección de origen para todos los
paquetes BGP.
 Utilice el comando de configuración del router neighbor ip-address update-
source loopback interface-number
 El establecimiento de la sesión BGP entre las direcciones IP de bucle invertido
también puede ayudar a aumentar la resistencia de una conexión eBGP.
 Si existen múltiples rutas entre dos vecinos eBGP, la sesión sobrevivirá sin
importar qué ruta permanezca disponible.
 Las direcciones de loopback deben ser accesibles desde ambos lados,
respectivamente.
 Por lo general, debe configurar rutas estáticas a la dirección IP de bucle de
retorno remoto correspondiente.
Multihop de eBGP

 Para solucionar este problema, también debe habilitar eBGP multihop, con
el comando de configuración del enrutador neighbor ip-address ebgp-
multihop [ttl]
 Este comando permite al enrutador aceptar e intentar conexiones BGP a pares
externos que residen en redes que no están conectadas directamente.
 Este comando aumenta el valor predeterminado de un salto para los pares
eBGP al cambiar el valor predeterminado de Tiempo de vida (TTL) de 1 (con
el parámetro ttl ) y, por lo tanto, permite rutas a la dirección de bucle de retorno
eBGP.
 De forma predeterminada, TTL se establece en 255 con este comando.
 Este comando es útil cuando existen rutas redundantes entre vecinos eBGP.
Restablecimiento de sesiones de BGP
 BGP puede potencialmente manejar grandes volúmenes de información de
enrutamiento.
 Cuando se produce un cambio en la configuración de la política de BGP, el
enrutador no puede pasar por la enorme tabla de información de BGP y volver a
calcular qué entrada ya no es válida en la tabla local.
 Para evitar tal problema, el software Cisco IOS aplica cambios solo en las
actualizaciones recibidas o enviadas después de que se haya realizado el
cambio de configuración de la política BGP.
 Si el administrador de la red desea que el cambio de política se aplique a todas
las rutas, debe activar una actualización para obligar al enrutador a dejar que
todas las rutas pasen por el nuevo filtro.
 Hay dos formas de activar una actualización: un restablecimiento completo y un
restablecimiento parcial.

Restablecimiento completo de sesiones BGP (Hard Reset)


 Restablecer una sesión es un método para informar al vecino o vecinos de un
cambio de política.
 Si se restablecen las sesiones BGP, toda la información recibida en esas
sesiones se invalida y se elimina de la tabla BGP.
 Después de un período de 30 a 60 segundos, las sesiones BGP se restablecen
automáticamente y la tabla BGP se vuelve a intercambiar, pero a través de los
nuevos filtros.
 Restablecer la sesión de BGP interrumpe el reenvío de paquetes.
 Utilice el comando EXEC privilegiado clear ip bgp * o clear ip bgp { vecino-
dirección } para provocar un restablecimiento completo de los vecinos BGP
involucrados.
 Tenga cuidado con la opción *.
Reinicio suave o actualización de ruta
 Utilice la clear ip bgp {* | neighbor-address } out comando EXEC privilegiado
para hacer que BGP realice un restablecimiento parcial para las actualizaciones
salientes.
 El enrutador en el que se emite este comando no restablece la sesión BGP.
 En cambio, el enrutador crea una nueva actualización y envía la tabla completa
a los vecinos especificados.
 Esta actualización incluye comandos de retiro para redes que el vecino ya no
verá, según la nueva política de salida.
 Este comando es muy recomendable cuando está cambiando una política de
salida, pero no ayuda si está cambiando una política de entrada.
 El comando soft clear ip bgp realiza una reconfiguración suave de las
actualizaciones entrantes y salientes.
 Cuando se restablece una sesión BGP mediante la reconfiguración suave, los
siguientes comandos pueden ser útiles para monitorear las rutas BGP recibidas,
enviadas o filtradas:
 show ip bgp neighbors {address} received-routes: Muestra todas las
rutas recibidas (aceptadas y rechazadas) del vecino especificado.
 show ip bgp neighbors {address} routes: Muestra todas las rutas que se
reciben y se aceptan del vecino especificado.
 show ip bgp: muestra las entradas en la tabla BGP.
 show ip bgp neighbors {address} advertised-routes: Muestra todas las
rutas BGP que se han anunciado a los vecinos.
Atributos de BGP y el proceso de selección de ruta

Selección de ruta BGP


 Un enrutador que ejecuta BGP puede recibir actualizaciones sobre destinos de
múltiples vecinos, algunos en diferentes sistemas autónomos y, por lo tanto,
pueden existir múltiples rutas para llegar a una red determinada.
 Estos se guardan en la tabla BGP.
 BGP elige solo una mejor ruta para llegar a un destino específico.
 BGP no está diseñado para realizar equilibrio de carga; las rutas se eligen
debido a la política, no en función del ancho de banda.
 La mejor ruta de BGP se envía al proceso del administrador de la tabla de
enrutamiento IP y se evalúa frente a cualquier otro protocolo de enrutamiento
que también pueda llegar a esa red.

Proceso de selección de ruta de BGP


El proceso de decisión de selección de ruta con una conexión de host
múltiple (BGP Multihomed)

 Un sistema autónomo rara vez implementa BGP con una sola conexión eBGP,
por lo que generalmente existen múltiples rutas para cada red en la base de
datos de reenvío de BGP.
 Si está ejecutando BGP en una red con una sola conexión eBGP, no tiene
bucles.
 Si se puede llegar al siguiente salto, la ruta se envía a la tabla de enrutamiento
IP.
 Usando el proceso de selección de ruta de 11 pasos, solo la mejor ruta se
coloca en la tabla de enrutamiento y se propaga a los vecinos BGP del
enrutador.
 Sin manipulación de ruta, la razón más común para la selección de ruta es el
Paso 4, la preferencia por la ruta AS más corta.

Atributos de BGP

 BGP utiliza los atributos de ruta para determinar la mejor ruta a las redes.
 Los siguientes son algunos términos que definen cómo se implementan estos
atributos:
 Un atributo es bien conocido u opcional, obligatorio o discrecional y transitivo o
no transitivo. Un atributo también puede ser parcial.

Las combinaciones válidas son:

 Well-known mandatory (Obligatorio conocido)


 Well-known discretionary (Reconocido discrecional)
 Optional transitive (Transitivo opcional)
 Optional nontransitive (Opcional no transitivo)
 Solo los atributos transitivos opcionales pueden marcarse como parciales.

Atributos conocidos (Well-Known)


Un atributo bien conocido es aquel que todas las implementaciones de BGP deben
reconocer y propagarse a los vecinos de BGP.
Hay dos tipos de atributos conocidos:
 Well-known mandatory attribute: debe aparecer un atributo obligatorio
conocido en todos los mensajes de actualización de BGP.
 Well-known discretionary attribute: es reconocido por todas las
implementaciones de BGP pero no tiene que estar en todos los mensajes de
actualización.
Nota Si falta un atributo conocido en un mensaje de actualización, se genera un
error de notificación. Esto asegura que todas las implementaciones de BGP estén
de acuerdo con un conjunto estándar de atributos.
Atributos opcionales
Los enrutadores BGP que implementan un atributo opcional pueden propagarlo a
otros vecinos BGP, según su significado.
 Transitivo opcional : los enrutadores BGP que no implementan un atributo
transitivo opcional deben pasarlo intacto a otros enrutadores BGP y marcar el
atributo como parcial.
 No transitivo opcional: los enrutadores BGP que no implementan un atributo
no transitivo opcional deben eliminar el atributo y no deben pasarlo a otros
enrutadores BGP.
Atributos BGP definidos

Además, Cisco ha definido un atributo de peso para BGP. El peso se configura


localmente en un enrutador y no se propaga a ningún otro enrutador BGP.
El atributo AS-Path
 El atributo AS-path es la lista de números de sistemas autónomos que ha
atravesado una ruta para llegar a un destino.
 El número del sistema autónomo que originó la ruta está al final de la lista.
 El atributo AS-path es un atributo obligatorio bien conocido.
 Siempre que una actualización de ruta pasa por un sistema autónomo, el
número del sistema autónomo se antepone a esa actualización.
 En otras palabras, se coloca al principio de la lista cuando la actualización se
anuncia al próximo vecino de eBGP.

 Los enrutadores BGP utilizan el atributo AS-path para garantizar un entorno sin
bucles.
 Si un enrutador BGP recibe una ruta en la que su propio sistema autónomo es
parte del atributo AS-path, no acepta la ruta.
 Los enrutadores que anuncian rutas a los vecinos iBGP no cambian el atributo
AS-path.
El atributo del siguiente salto
 El atributo de salto siguiente de BGP es un atributo obligatorio bien conocido
que indica la dirección IP de salto siguiente que se utilizará para llegar a un
destino.
 Para eBGP, la dirección del siguiente salto es la dirección IP del vecino que
envió la actualización.
 Para iBGP, el siguiente salto anunciado por eBGP se lleva a iBGP de forma
predeterminada.
 Este comportamiento se puede anular configurando un enrutador para que se
anuncie a sí mismo como la dirección del siguiente salto para las rutas enviadas
a su vecino.
El atributo de origen
El origen es un atributo obligatorio bien conocido que define el origen de la
información de la ruta. El atributo de origen puede ser uno de tres valores:
IGP:
 El recorrido es interior al sistema autónomo originario.
 Esto sucede normalmente cuando se utiliza un comando de red para anunciar la
ruta a través de BGP.
 Un origen de IGP se indica con una i en la tabla BGP.
EGP:
 La ruta se aprende a través de EGP (ya no se admite).
 Esto se indica con una e en la tabla BGP.
Incompleto:
 El origen de la ruta se desconoce o se conoce por otros medios.
 Esto suele ocurrir cuando una ruta se redistribuye en BGP.
 Un origen incompleto se indica con un ? en la tabla BGP.

El atributo de preferencia local


 La preferencia local es un atributo discrecional bien conocido que indica a los
enrutadores del sistema autónomo qué ruta se prefiere para salir del sistema
autónomo.
 Se prefiere un camino con una preferencia local más alta .
 El atributo de preferencia local se envía solo a los vecinos iBGP; no se pasa a
los pares eBGP.
 El valor predeterminado de preferencia local en un enrutador Cisco es 100.
Los enrutadores A y B son vecinos iBGP en AS 64520 y ambos reciben
actualizaciones sobre la red 172.16.0.0 desde diferentes direcciones.
 La preferencia local en el enrutador A se establece en 200.
 La preferencia local en el enrutador B se establece en 150.
Debido a que la preferencia local por el enrutador A es mayor, se selecciona como
el punto de salida preferido del AS 64520.
El atributo de comunidad
 Las comunidades BGP son una forma de filtrar las rutas entrantes o salientes.
 Las comunidades BGP permiten a los enrutadores etiquetar rutas con un
indicador (la comunidad ) y permiten que otros enrutadores tomen decisiones
basadas en esa etiqueta.
 Cualquier enrutador BGP puede filtrar rutas en actualizaciones entrantes o
salientes o puede seleccionar rutas preferidas según las comunidades (la
etiqueta).
 Las comunidades no están restringidas a una red o un sistema autónomo, y no
tienen fronteras físicas.
 Las comunidades son atributos transitivos opcionales. Si un enrutador no
comprende el concepto de comunidades, lo transfiere al siguiente enrutador.
 Sin embargo, si el enrutador comprende el concepto, debe configurarse para
propagar la comunidad; de lo contrario, las comunidades se eliminan de forma
predeterminada.
El atributo MED
El atributo MED, también llamado métrica , es un atributo no transitivo opcional.
 En la salida del comando show ip bgp, por ejemplo, el MED se muestra en
la columna métrica .
El MED indica a los vecinos externos la ruta preferida hacia un sistema autónomo.
Esta es una forma dinámica para que un sistema autónomo intente influir en otro
sistema autónomo en cuanto a qué camino debe elegir para llegar a una
determinada ruta si hay múltiples puntos de entrada al sistema autónomo.
Se prefiere un valor métrico más bajo.
A diferencia de la preferencia local, el MED se intercambia entre sistemas
autónomos
El MED se envía a los pares eBGP; esos enrutadores propagan el MED dentro de
su sistema autónomo.
 El MED no se pasa a un tercer AS.
MED influye en el tráfico de entrada a un sistema autónomo, mientras que la
preferencia local influye en el tráfico de salida de un sistema autónomo.
Tenga en cuenta que no hay garantía de que el sistema autónomo vecino tenga
en cuenta el atributo MED; puede que ya haya decidido la ruta basándose en otros
atributos.
De forma predeterminada, un enrutador compara el atributo MED solo para las
rutas de los vecinos en el mismo sistema autónomo.
El atributo de peso ( solo Cisco )
 El atributo de peso se configura localmente y solo proporciona una política de
enrutamiento local; se no se propagó a los vecinos BGP.
 Se prefieren las rutas con un peso mayor cuando existen varias rutas al mismo
destino.
 El peso puede tener un valor de 0 a 65535. Las rutas que origina el enrutador
tienen un peso de 32768 de forma predeterminada, y otras rutas tienen un peso
de 0 de forma predeterminada.
 El atributo de peso se aplica cuando se usa un enrutador con múltiples puntos
de salida de un sistema autónomo.
 Compare esto con el atributo de preferencia local, que se utiliza cuando dos o
más enrutadores proporcionan múltiples puntos de salida.

 El enrutador R1 tiene dos formas de llegar a 209.165.201.0 y debe decidir qué


camino tomar.
 El enrutador R1 está configurado para establecer el peso de las actualizaciones
que provienen del enrutador R2 en 200 y el peso de las que provienen del
enrutador R3 en 150.
 Debido a que el peso de las actualizaciones del enrutador R2 es mayor, el
enrutador R1 usa el enrutador R2 como siguiente salto para llegar a
209.165.201.0.
Cambiar el peso de todas las actualizaciones de un vecino
El vecino dirección IP de peso de peso enrutador comando de configuración se
utiliza para asignar un peso a las actualizaciones desde una conexión vecino
Cambio del peso mediante mapas de ruta
Influir en la selección de la ruta BGP
Cambiar el peso
Cambio de preferencia local
 La configuración de preferencias locales se comparte dentro de un sistema
autónomo, por lo que esto afectará tanto a GW1 como a GW2.
 Una forma de cambiar la preferencia local es cambiar el valor predeterminado
de 100 con el comando de configuración del enrutador bgp default local-
preference value Todas las rutas BGP que se anuncian incluirían este valor
de preferencia local.
 La preferencia local también se puede cambiar dentro de un mapa de ruta.
Configuración del AS-Path
 Una forma en que un sistema autónomo puede intentar influir en el flujo de
tráfico entrante es enviando actualizaciones de eBGP con un atributo AS-path
extendido para rutas no deseadas.
 La ruta del sistema autónomo se amplía con varias copias del número de
sistema autónomo del remitente.
 Es menos probable que el receptor de esta actualización seleccione la ruta
como la mejor porque su atributo AS-path parece ser más largo.
 Esta función se denomina AS-path prepending
 Puede configurar la anteposición en un enrutador para todas las actualizaciones
de enrutamiento que envía a un vecino o solo en un subconjunto de ellos.
 En nuestra topología de ejemplo, GW2 necesita anteponer una única instancia
de su número de sistema autónomo a la ruta AS anunciada a ISP2. ISP3
recibirá actualizaciones sobre las redes en el sistema autónomo 65000 con una
ruta más corta a través de ISP1 y una ruta más larga a través de ISP2
Configuración del AS-Path
 Una forma en que un sistema autónomo puede intentar influir en el flujo de
tráfico entrante es enviando actualizaciones de eBGP con un atributo AS-path
extendido para rutas no deseadas.
 La ruta del sistema autónomo se amplía con varias copias del número de
sistema autónomo del remitente.
 Es menos probable que el receptor de esta actualización seleccione la ruta
como la mejor porque su atributo AS-path parece ser más largo.
 Esta función se denomina AS-path prepending
 Puede configurar la anteposición en un enrutador para todas las actualizaciones
de enrutamiento que envía a un vecino o solo en un subconjunto de ellos.
 En nuestra topología de ejemplo, GW2 necesita anteponer una única instancia
de su número de sistema autónomo a la ruta AS anunciada a ISP2. ISP3
recibirá actualizaciones sobre las redes en el sistema autónomo 65000 con una
ruta más corta a través de ISP1 y una ruta más larga a través de ISP2
Controlar las actualizaciones de enrutamiento de BGP

Filtrado de actualizaciones de enrutamiento BGP


BGP le permite filtrar las actualizaciones que se reciben de un vecino o que se
envían a un vecino.
Las principales herramientas de filtrado de rutas incluyen mapas de ruta, listas de
distribución y listas de prefijos.
Un escenario común en el que se utiliza el filtrado de actualizaciones es en
entornos empresariales de doble hogar.
En este entorno, una empresa debe anunciar solo su propio espacio de
direcciones a los ISP.
Filtrado BGP mediante listas de prefijos
El comando neighbor ip-address prefix-list prefix-list-name {in | out} de
configuración del enrutador out } se usa para aplicar una lista de prefijos a las
rutas desde o hacia un vecino.
Filtrado BGP mediante listas de acceso AS-Path
Cuando una ruta BGP se obtiene como resultado de un comando de Network en
un proceso BGP o la redistribución en un proceso BGP, el atributo AS-path se
crea y está vacío.
Cada vez que un enrutador de salida anuncia la ruta a otro sistema autónomo, se
modifica el atributo AS-path, y se antepone el número de AS de salida.
Los enrutadores pueden filtrar las rutas entrantes en función de sus atributos de
ruta AS.
Cuando los enrutadores filtran las actualizaciones de BGP según el contenido del
atributo AS-path, utilizan expresiones regulares.

La lista de acceso a la ruta del sistema autónomo está definida por el ip as-path
access-list accesslist-number { permiso | deny } comando de configuración
global regexp .

El número de lista de acceso de la lista de filtro de la dirección IP


del vecino { en | El comando de configuración del enrutador out } se usa para
aplicar una lista de acceso AS-path a las rutas desde o hacia un vecino.
Las rutas permitidas por la lista de acceso de AS-path pueden recibirse o enviarse
al vecino, y las denegadas no se incluyen.

* Estos comandos evitan que AS6500 se utilice como red de tránsito.


Filtrado BGP mediante mapas de ruta
Un mapa de ruta puede hacer coincidir y establecer varios atributos BGP
diferentes, incluidos los siguientes:
 Origin
 Next hop
 Community
 Local preference
 MED
Los mapas de ruta pueden coincidir en función de otros elementos, incluidos los
siguientes:
 Network number and subnet mask (with an IP prefix list) (ip y mascara)
 Route originator (Orinador de la Ruta)
 Tag attached to an IGP route (Etiqueta adjunta a una ruta IGP)
 AS-path (Camino de Sistemas autonmos)
 Route type (internal or external) (Tipo de Ruta)

Cuando se usa para el filtrado BGP, una denegación significa que la ruta se ignora
y un permiso significa que la ruta se procesa más y se aplican las cláusulas
establecidas.
Las cláusulas de conjunto permiten cambiar uno o más atributos o establecer
valores específicos antes de que la ruta pase el mapa de ruta.
Para aplicar un mapa de ruta para filtrar rutas BGP entrantes o salientes, use
el comando de configuración del enrutador del mapa de ruta neighbor .

El AS6500 solo acepta una ruta predeterminada y usa AS 65100 como su enlace
principal
Orden de filtrado
La lista de filtros entrantes, la lista de prefijos (o lista de distribución) y el mapa de
ruta (en este orden) deben permitir las rutas que se reciben de un vecino antes de
que sean aceptadas en la tabla BGP.
De manera similar, las rutas salientes deben pasar la lista de filtros salientes, el
mapa de rutas y la lista de prefijos (o lista de distribución) (en este orden) antes de
que se envíen al vecino.
Nota: El orden en el que se procesan los mecanismos de filtrado BGP puede
diferir en las diferentes versiones de IOS.
Borrar la sesión de BGP
Recuerde de la sección anterior "Restablecimiento de sesiones de BGP" que si
desea que se aplique un cambio de política, como un filtro de BGP, debe activar
una actualización.
Puede realizar un restablecimiento completo o una actualización de ruta
(restablecimiento parcial).
Grupos de pares de BGP
En BGP, muchos vecinos a menudo se configuran con las mismas políticas de
actualización.
En un enrutador Cisco IOS, los vecinos con las mismas políticas de actualización
se pueden agrupar en grupos de pares para simplificar la configuración y, lo que
es más importante, para hacer que la actualización sea más eficiente y mejorar el
rendimiento.
Cuando un enrutador BGP tiene muchos pares, este enfoque es muy
recomendable.
Operación del grupo de pares
Las políticas del grupo de pares son similares a una plantilla; luego, la plantilla se
aplica a los miembros individuales del grupo de pares.
Los miembros del grupo de pares heredan todas las opciones de configuración del
grupo de pares.
El enrutador también se puede configurar para anular estas opciones, pero solo
las opciones que afecten a las actualizaciones entrantes.
La transmisión TCP real todavía tiene que realizarse entre vecinos debido a las
características orientadas a la conexión de las sesiones BGP.
Configuración del grupo de pares
El comando de configuración del neighbor ip-address peer-group peer-group-
name se utiliza para crear un grupo de pares BGP.

El comando de configuración del enrutador neighbor ip-address peer-


group peer-group-name se utiliza para asignar vecinos como parte del grupo
después de que se haya creado el grupo.

El comando EXEC clear ip bgp peer-group peer-group-name se utiliza para


restablecer las conexiones BGP para todos los miembros de un grupo de pares
BGP.

Ejemplo de configuración de grupo de pares

También podría gustarte