CCNP - and - CCIE - Enterprise - Core - CAPITULO - 12 ES
CCNP - and - CCIE - Enterprise - Core - CAPITULO - 12 ES
CCNP - and - CCIE - Enterprise - Core - CAPITULO - 12 ES
BGP avanzado
Flatching condicional: Esta sección proporciona una visión general de cómo los
prefijos de red pueden ser condicionalmente emparejados con ACLs, listas de prefijos
y expresiones regulares.
Aletas de ruta: Esta sección explica la estructura de una hoja de ruta y cómo se
pueden combinar las coincidencias condicionales y las acciones condicionales para
filtrar o manipular las rutas.
El Border Gateway Protocol (BGP) puede soportar cientos de miles de rutas, lo que lo
convierte en la opción ideal para Internet. Las organizaciones también utilizan BGP por su
flexibilidad y propiedades de ingeniería de tráfico. Este capítulo amplía el capítulo 11,
"Border Gateway Protocol (BGP)", explicando las características avanzadas de BGP y los
conceptos relacionados con el protocolo de enrutamiento BGP, como el multihoming BGP,
el filtrado de rutas, las comunidades BGP y la lógica para identificar la mejor ruta para un
prefijo de red específico.
6. ¿Qué ocurre con una ruta que no coincide con la lista de prefijos PrefixRFC1918
cuando se utiliza el siguiente mapa de rutas?
route-map QUESTION deny 10
match ip address prefix-list PrefixRFC1918
route-map QUESTION permit 20
establecer la métrica 200
a. La ruta está permitida y la métrica se establece en 200.
b. La ruta está denegada.
c. La ruta está permitida.
d. La ruta está permitida, y la métrica por defecto se establece en 100.
7. Verdadero o falso: Una ACL AS_Path de BGP y una lista de prefijos pueden
aplicarse a un vecino al mismo tiempo.
a. Verdadero
b. Falso
8. ¿Cuál de las siguientes no es una comunidad BGP conocida?
a. No_Anuncio
b. Internet
c. No_Exportación
d. Ruta_privada
9. ¿Cuál de las siguientes técnicas es el segundo criterio de selección de la mejor ruta
de BGP?
a. Peso
b. Preferencia local
c. Origen
d. MED
10. Verdadero o falso: Para que MED se utilice como criterio de selección, las rutas
deben proceder de sistemas autónomos diferentes.
a. Verdadero
b. Falso
Temas de la Fundación
Internet se ha convertido en un componente vital para las empresas de hoy en día. La
conectividad a Internet es necesaria, como mínimo, para el correo electrónico y la
investigación. Además, algunas organizaciones alojan
servidores de comercio electrónico, utilizar telefonía de voz sobre IP (VoIP) o terminar
túneles VPN a través de conexiones MPLS privadas. Una organización debe incorporar
redundancias en la arquitectura de la red para garantizar que no haya puntos únicos de
fallo (SPOF) con la conectividad de la red para soportar las necesidades de la empresa.
Una empresa puede conectarse a Internet con una simple ruta por defecto utilizando una
única conexión. Sin embargo, si una empresa quiere utilizar varios proveedores de
servicios (SP) para
12
redundancia o rendimiento adicional, se requiere BGP. BGP es el protocolo de enrutamiento utilizado
en Internet.
El uso de BGP por parte de una empresa no se limita a la conectividad a Internet. Si la
empresa utiliza MPLS L3VPN de un proveedor de servicios, probablemente esté
utilizando BGP para intercambiar las redes LAN con el proveedor de servicios. Las
rutas suelen redistribuirse entre BGP y el protocolo de enrutamiento basado en la LAN.
En ambos casos, BGP se utiliza en el extremo de la red (Internet o WAN) y tiene
conexiones redundantes para garantizar una red fiable. Se
proporciona una selección avanzada de rutas y conectividad para una organización. Este
capítulo se centra en la resolución de problemas de las arquitecturas de borde de BGP.
BGP Multihoming
El método más sencillo para proporcionar redundancia es proporcionar un segundo
circuito. La adición de un segundo circuito y el establecimiento de una segunda sesión
BGP a través de ese enlace peering se conoce como BGP multihoming porque hay
múltiples sesiones para aprender rutas y establecer conectividad. El comportamiento por
defecto de BGP es anunciar sólo la mejor ruta a la RIB, lo que significa que sólo se utiliza
una ruta para un prefijo de red cuando se reenvía el tráfico de red a un destino.
■ Escenario 1: R1 se conecta a R3 con el mismo SP. Este diseño tiene en cuenta los
fallos de enlace; sin embargo, un fallo en cualquiera de los routers o dentro de
la red de SP1 provoca un fallo en la red.
R3 R3 R4 R3 R4
eBGP R3 R4
eB
eBGP
eBGP
e e e e
GP
B B B B
G G G G
R1 P R1 P P R1 P R1 R2
iBGP
AS AS 65100 AS 65100 AS 65100
65100
Escenario 1 Escenario Escenario Escenario 4
2 3
Figura 12-1 Escenarios comunes de BGP Multihoming
SP1 SP2
AS100 AS200
SP3 SP4
AS300 AS400 100.64.1.0/24
Usua Internet Servid
rio or
R1 R2
R3
AS500
Figura 12-2 Enrutamiento de tránsito empresarial
Pueden surgir problemas si R1 y R2 utilizan la política de enrutamiento BGP por defecto.
Un usuario que se conecta a SP3 (AS 300) se dirige a través de la red de la empresa (AS
500) para llegar a un servidor que se conecta a SP4 (AS 400). SP3 recibe el prefijo
100.64.1.0/24 de AS 100 y AS 500. SP3 selecciona la ruta a través del AS 500 porque la
AS_Path es mucho más corta que pasar por las redes de SP1 y SP2.
La red del AS 500 está proporcionando enrutamiento de tránsito a todo el mundo en Internet,
lo que puede saturar los enlaces de peering del AS 500. Además de causar problemas a los
usuarios del AS 500, esta situación tiene un impacto en el tráfico de los usuarios que intentan
atravesar el AS 500.
MPLS MPLS
SP1 SP2
Rama
R31 R41 R51 R52
10.5.12.0/24
MPLS MPLS
SP1 SP2
Rama
R31 R41 R51 R52
10.5.12.0/24
Los entornos multihomed deben configurarse de manera que los routers de las sucursales
no puedan actuar como routers de tránsito. En la mayoría de los diseños, el enrutamiento
en tránsito del tráfico de otra sucursal no es deseable, ya que el ancho de banda de la WAN
puede no estar dimensionado en consecuencia. El enrutamiento en tránsito puede evitarse
configurando el filtrado de rutas de salida en cada sucursal. En esencia, las sucursales no
anuncian lo que aprenden de la WAN, sino que anuncian sólo las redes que dan a la LAN.
Si se requiere un comportamiento de tránsito, se restringe a los centros de datos o a
ubicaciones específicas de la siguiente manera:
NOTA La ubicación de las ACEs dentro de una ACL es importante, y pueden producirse
consecuencias no deseadas si las ACEs están desordenadas.
■ ACLs extendidas: Definen los paquetes en función del origen, el destino, el protocolo,
el puerto o una combinación de otros atributos de los paquetes. Este libro se ocupa
del enrutamiento y limita el alcance de las ACL al origen, el destino y el protocolo.
Los ACLS estándar utilizan una entrada numerada 1-99, 1300-1999, o una ACL con nombre. Extendido
Las ACLs utilizan una entrada numerada 100-199, 2000-2699, o una ACL con nombre. Las
ACLs con nombre proporcionan relevancia a la funcionalidad de la ACL, pueden ser
utilizadas con ACLs estándar o extendidas, y son generalmente preferidas.
ACL estándar
A continuación se describe el proceso de definición de una ACL estándar:
ACLs extendidas
El siguiente es el proceso para definir una ACL extendida:
Coincidencia de prefijos
Las listas de prefijos proporcionan otro método de identificación de redes en un
protocolo de enrutamiento. Una lista de prefijos identifica una dirección IP específica,
una red o un rango de redes y permite la selección de múltiples redes con una variedad
de longitudes de prefijos utilizando una especificación de coincidencia de prefijos.
Muchos ingenieros de redes prefieren esto sobre el método de selección de redes ACL.
Una especificación de coincidencia de prefijo contiene dos partes: un patrón de bits de alto
orden y un recuento de bits de alto orden, que determina los bits de alto orden en el patrón
de bits que deben coincidir. Algunos documentos se refieren al patrón de bits de alto
orden como la dirección o la red y al recuento de bits de alto orden como la longitud o la
longitud de la máscara.
En la Figura 12-6, la especificación de coincidencia de prefijo tiene el patrón de bits de
alto orden 192.168.0.0 y la cuenta de bits de alto orden 16. El patrón de bits de alto orden
se ha convertido a binario para demostrar dónde se encuentra el recuento de bits de alto
orden. Debido a que no hay parámetros adicionales de longitud de coincidencia
incluidos, el conteo de bits de alto orden es una coincidencia exacta.
Recuento de
Patrón de bits de
alto orden (red) bits de alto
orden (longitud)
Coincidencia 192.168.0.0/16
de prefijos
Prefijo
Longitud del
en
prefijo (negrita
binario
en el prefijo)
Recuento de bits
de alto orden
(longitud)
Patrón de bits de Parámetros de
alto orden (red)
longitudes de
coincidencia
Coincidencia 10.168.0.0/13 ge 24
de prefijos
Longitud del
prefijo (negrita
Prefijo
en el prefijo)
en
binario
Recuento de bits
de alto orden
(longitud)
Coincidencia 10.0.0.0/8 ge 22 le 26
de prefijos
Prefijo bin
en ari
o
Longitud del
prefijo (negrita
en el prefijo)
NOTA La coincidencia con una longitud de prefijo específica que sea mayor que el recuento
de bits de orden superior requiere que el valor ge y el valor le coincidan.
Listas de prefijos
Las listas de prefijos pueden contener múltiples entradas de especificación de
coincidencia de prefijos que contienen una acción de permiso o denegación. Las listas de
prefijos se procesan en orden secuencial de forma descendente, y la primera coincidencia
de prefijos se procesa con la acción de permiso o denegación apropiada.
Las listas de prefijos se configuran con el comando de configuración global ip prefix-list
prefix-list- name [seq sequence-number] {permit | deny} high-order-bit-pattern/high-
order-bit-count [ge ge-value] [le le-value].
Si no se proporciona una secuencia, el número de secuencia se incrementa
automáticamente en 5, basándose en el número de secuencia más alto. La primera entrada
es la 5. La secuenciación permite borrar una entrada específica. Dado que las listas de
prefijos no se pueden volver a secuenciar, es aconsejable dejar espacio suficiente para
insertar números de secuencia más adelante.
IOS e IOS XE requieren que el valor ge sea mayor que el recuento de bits de alto orden y
que el valor le sea mayor o igual que el valor ge:
El ejemplo 12-1 proporciona un ejemplo de lista de prefijos llamada RFC1918 para todas
las redes en el rango de direcciones RFC 1918. La lista de prefijos sólo permite que
existan prefijos /32 en el rango de red 192.168.0.0 y que no existan en ningún otro rango
de red en la lista de prefijos.
Observe que la secuencia 5 permite todos los prefijos /32 en el patrón de bits
192.168.0.0/13, y la secuencia 10 niega todos los prefijos /32 en cualquier patrón de bits, y
las secuencias 15, 20 y 25 permiten rutas en los rangos de red apropiados. El orden de la
secuencia es importante para las dos primeras entradas para asegurar que sólo existen
prefijos /32 en la red 192.168.0.0 en la lista de prefijos.
Ejemplo 12-1 Ejemplo de lista de prefijos
Aprender regex puede llevar tiempo, pero los más comunes utilizados en BGP son ^, $ y _.
La Tabla 12-6 muestra algunas regex comunes de BGP.
Mapas de rutas
Los mapas de ruta proporcionan muchas características diferentes a una variedad de
protocolos de enrutamiento. En el nivel más simple, los mapas de ruta pueden filtrar redes
de la misma manera que las ACL, pero también proporcionan una capacidad adicional a
través de la adición o modificación de los atributos de la red. Para influir en un protocolo
de enrutamiento, un mapa de ruta debe ser referenciado desde el protocolo de
enrutamiento. Los mapas de ruta son fundamentales para BGP porque son el componente
principal para modificar una política de enrutamiento única vecino por vecino.
Una hoja de ruta tiene cuatro componentes:
El ejemplo 12-3 proporciona un ejemplo de mapa de ruta para demostrar los cuatro
componentes de un mapa de ruta mostrados anteriormente. El criterio de coincidencia
condicional se basa en rangos de red especificados en una ACL. Se han añadido
comentarios a este ejemplo para explicar el comportamiento del mapa de ruta en cada
secuencia.
Ejemplo 12-3 Ejemplo de mapa de ruta
NOTA Cuando elimine una declaración de mapa de ruta específica, incluya el número de
secuencia para evitar que se elimine todo el mapa de ruta.
Correspondencia condicional
Ahora que se han explicado los componentes y el orden de procesamiento de una hoja de
ruta, esta sección amplía cómo se puede hacer coincidir una ruta. La Tabla 12-7
proporciona la sintaxis de los comandos para los métodos más comunes de coincidencia
condicional de prefijos y describe su uso. Como puede ver, hay un número de opciones
disponibles.
Correspondencia compleja
Algunos ingenieros de redes encuentran los mapas de ruta demasiado complejos si los
criterios de coincidencia condicional utilizan una ACL, una ACL de ruta de AS o una lista
de prefijos que contiene una sentencia deny. El ejemplo 12-6 muestra una configuración
Capítulo 12: BGP avanzado 300
donde la ACL utiliza una sentencia deny para el rango de red 172.16.1.0/24.
Las configuraciones de lectura de este tipo deben seguir primero el orden de la
secuencia y en segundo lugar los criterios de coincidencia condicional, y sólo después
de que se produzca una coincidencia se debe utilizar la acción de procesamiento y la
acción opcional. La coincidencia de una declaración de denegación en los criterios de
coincidencia condicional excluye la ruta de esa secuencia en el mapa de rutas.
El prefijo 172.16.1.0/24 es denegado por ACL-ONE, lo que implica que no hay una
coincidencia en las secuencias 10 y 20; por lo tanto, la acción de procesamiento
(permitir o denegar) no es necesaria. La secuencia 30 no contiene una cláusula de
coincidencia, por lo que las rutas restantes están permitidas.
El prefijo 172.16.1.0/24 pasaría en la secuencia 30 con la métrica establecida en 20. El
prefijo 172.16.2.0/24 coincidiría con ACL-ONE y pasaría en la secuencia 10.
Ejemplo 12-6 Mapas de ruta de coincidencia compleja
Acciones opcionales
Además de permitir el paso del prefijo, los mapas de ruta pueden modificar los
atributos de la ruta. La Tabla 12-8 ofrece un breve resumen de las modificaciones de
atributos más populares.
NOTA El comando continue no se suele utilizar porque añade complejidad a la hora de solucionar los
problemas de los mapas de ruta.
RIB Loc-RIB
Consul (Base de datos BGP)
te
NOTA Un vecino BGP no puede utilizar una lista de distribución y una lista de prefijos al
mismo tiempo para recibir o anunciar rutas.
Capítulo 12: BGP avanzado 303
Las siguientes secciones explican cada una de estas técnicas de filtrado con más detalle. Imagine
un escenario simple con R1 (AS 65100) que tiene un solo peering eBGP con R2 (AS 65200), 12
que luego puede hacer peer con otros sistemas autónomos (como el AS 65300). La parte
relevante de la topología es que R1 hace peer con R2 y se centra en la tabla BGP de R1,
como se muestra en el Ejemplo 12-8, con énfasis en el prefijo de red y la ruta del AS.
Ejemplo 12-8 Tabla BGP de referencia
R1
ip access-list extended ACL-ALLOW
permit ip 192.168.0.0 0.0.255.255 host 255.255.255.255
permit ip 100.64.0.0 0.0.0.255.0 host 255.255.255.128
!
router bgp 65100
address-family
ipv4
neighbor 10.12.1.2 distribute-list ACL-ALLOW in
El ejemplo 12-10 muestra la tabla de enrutamiento de R1. R1 inyecta dos rutas locales en
la tabla BGP (10.12.1.0/24 y 192.168.1.1/32). Las dos redes loopback de R2 (AS 65200) y R3
(AS 65300) se permiten porque están dentro de la primera entrada ACL-ALLOW, y dos
de las redes en el patrón 100.64.x.0 (100.64.2.0/25 y 100.64.3.0/25) se aceptan. La red
100.64.2.192/26 se rechaza porque la longitud del prefijo no
coincide con la segunda entrada ACL-ALLOW. El ejemplo 12-8 se puede consultar para
identificar las rutas antes de que se aplique la lista de distribución de BGP.
Ejemplo 12-10 Visualización de rutas filtradas por la lista de distribución BGP
Ahora que se ha aplicado la lista de prefijos, se puede examinar la tabla BGP en R1, como se
muestra en el Ejemplo 12-12. Observe que las redes 100.64.2.0/25, 100.64.2.192/26 y
100.64.3.0/25 fueron filtradas ya que no estaban dentro de los criterios de coincidencia de la
lista de prefijos. El ejemplo 12-8 puede ser referenciado para identificar las rutas antes de que
se aplique la lista de prefijos BGP.
Capítulo 12: BGP avanzado 305
Ejemplo 12-12 Verificación del filtrado con una lista de prefijos BGP 12
R1# show bgp ipv4 unicast | begin Red
RedSiguiente HopMétrico LocPrf Peso Ruta
*> 10. 3.3.0/2410. 12.1.2330 65200 65300 3003 ?
*10 .12.1.0/2410 .12.1. 2220 65200 ?
*> 0.0 .0.00 32768 ?
*> 10. 23.1.0/2410. 12.1.23330 65200 ?
*> 1 9 2 .168.1.1/320.0 .0.00 32768 ?
*> 1 9 2 .168.2.2/3210. 12.1.2220 65200 ?
*> 1 9 2 .168.3.3/3210. 12.1.233330 65200 65300 ?
R2# show bgp ipv4 unicast neighbors 10.12.1.1 advertised-routes | begin Network
RedSiguiente HopMétrico LocPrf Peso Ruta
*> 10. 3.3.0/2410. 23.1.3330 65300 3003 ?
*> 10. 12.1.0/240.0.0 .00 32768 ?
*> 10. 23.1.0/240.0 .0.00 32768 ?
*> 1 0 0 .64.2.0/250.0 .0.00 32768 ?
*> 1 0 0 .64.2.192/26 0.0 .0.00 32768 ?
*> 1 0 0 .64.3.0/2510. 23.1.330 65300 300 ?
*> 1 9 2 .168.2.2/320.0 .0.00 32768 ?
*> 1 9 2 .168.3.3/3210. 23.1.33330 65300 ?
R2
ip as-path access-list 1 permit ^$
!
router bgp 65200
address-family ipv4 unicast
neighbor 10.12.1.1 filter-list 1 out
vecino 10.23.1.3 filter-list 1 out
Ahora que la ACL de la ruta del AS ha sido aplicada, las rutas anunciadas pueden ser
revisadas de nuevo. El ejemplo 12-15 muestra las rutas anunciadas a R1. Observe que
todas las rutas no tienen una ruta AS, lo que confirma que sólo se anuncian externamente
las rutas de origen local. El Ejemplo 12-13 puede ser referenciado para identificar las
rutas antes de que se aplique la ACL de ruta AS de BGP.
Ejemplo 12-15 Verificación de anuncios de rutas locales con una ACL de ruta de AS
R2# show bgp ipv4 unicast neighbors 10.12.1.1 advertised-routes | begin Network
RedSiguiente HopMétrico LocPrf Peso Ruta
*> 10. 12.1.0/240.0.0 .00 32768 ?
*> 10. 23.1.0/240.0 .0.00 32768 ?
*> 1 0 0 .64.2.0/250.0 .0.00 32768 ?
*> 1 0 0 .64.2.192/26 0.0 .0.00 32768 ?
*> 1 9 2 .168.2.2/320.0 .0.00 32768 ?
Mapas de rutas
Como se ha explicado anteriormente, los mapas de ruta proporcionan una funcionalidad
adicional sobre el filtrado puro. Los mapas de ruta proporcionan un método para manipular
los atributos de las rutas BGP. Los mapas de ruta se aplican en base a los vecinos de BGP para
las rutas que se anuncian o reciben. Un mapa de ruta diferente puede ser
utilizado para cada dirección. El mapa de ruta se asocia al vecino BGP con el comando
neighbor ip-address route-map route-map-name {in|out} bajo la familiade direcciones específica.
El ejemplo 12-16 muestra la tabla de enrutamiento BGP de R1, que se utiliza aquí para
demostrar el poder de un mapa de ruta.
Ejemplo 12-16 Tabla BGP antes de aplicar un mapa de ruta
Las hojas de ruta permiten también múltiples pasos en el procesamiento. Para demostrar este
concepto, nuestra hoja de ruta constará de cuatro pasos:
1. Denegar cualquier ruta que esté en la red 192.168.0.0/16 utilizando una lista de prefijos.
2. Coincidir con cualquier ruta originada en el AS 65200 que esté dentro del rango de
red 100.64.0.0/10 y establecer la preferencia local de BGP en 222.
3. Coincidir con cualquier ruta originada en el AS 65200 que no coincida con el
paso 2 y establecer el peso de BGP en 65200.
4. Permitir el procesamiento de todas las demás rutas.
El ejemplo 12-17 demuestra la configuración de R1, donde se referencian múltiples listas de
prefijos junto con una ACL de ruta de AS.
Ejemplo 12-17 Configuración del mapa de rutas de R1 para las rutas entrantes del AS 65200
R1
ip prefix-list FIRST-RFC1918 permit 192.168.0.0/15 ge
16 ip as-path access-list 1 permit _65200$
ip prefix-list SECOND-CGNAT permit 100.64.0.0/10 ge 11
!
route-map AS65200IN deny 10
description Denegar cualquier red RFC1918 a través de la
concordancia de la lista de prefijos match ip address prefix-
list FIRST-RFC1918
!
route-map AS65200IN permit 20
description Cambiar la preferencia local para AS65200 originar ruta en
100.64.x.x/10 match ip address prefix-list SECOND-CGNAT
match as-path 1
set local-preference 222
!
route-map AS65200IN permit 30
descripción Cambiar el peso de las rutas de origen de
AS65200 match as-path 1
peso del conjunto 65200
!
route-map AS65200IN permit 40
descripción Permitir todas las demás rutas sin modificar
!
router bgp 65100
address-family ipv4 unicast
neighbor 10.12.1.1 route-map AS65200IN in
El ejemplo 12-18 muestra la tabla de enrutamiento BGP de R1. Las siguientes acciones han ocurrido:
NOTA Se considera una buena práctica utilizar una política de ruta diferente para los prefijos
entrantes y salientes para cada vecino BGP.
Comunidades BGP
Las comunidades BGP proporcionan una capacidad adicional para etiquetar rutas y para
modificar la política de enrutamiento BGP en los routers ascendentes y descendentes. Las
comunidades BGP pueden añadirse, eliminarse o modificarse selectivamente en cada
atributo a medida que una ruta viaja de un router a otro.
Las comunidades BGP son un atributo transitivo opcional de BGP que puede atravesar de
un AS a otro. Una comunidad BGP es un número de 32 bits que puede incluirse en una
ruta. Una comunidad BGP puede mostrarse como un número completo de 16 bits (0-
4.294.967.295) o como dos números de 16 bits (0-65535):(0-65535), comúnmente
conocido como nuevo formato.
Las comunidades BGP privadas siguen una convención particular en la que los primeros
16 bits representan el AS de origen de la comunidad, y los segundos 16 bits representan un
patrón definido por el AS de origen. Un patrón de comunidad BGP privada puede variar de
una organización a otra, no necesita ser registrado y puede significar ubicaciones geográficas
para un AS mientras que significa un método de publicidad de rutas en otro AS. Algunas
organizaciones publican sus patrones de comunidad BGP privada en sitios web como
http://www.onesc.net/communities/.
En 2006, el RFC 4360 amplió las capacidades de las comunidades BGP proporcionando un
formato extendido. Las comunidades BGP extendidas proporcionan una estructura para
varias clases de información y se utilizan comúnmente para los servicios VPN. El RFC
8092 proporciona soporte para comunidades mayores de 32 bits (que están fuera del
alcance de este libro).
Comunidades reconocidas
El RFC 1997 define un conjunto de comunidades globales (conocidas como
comunidades conocidas) que utilizan el rango de comunidades de 4.294.901.760
(0xFFFF0000) a 4.294.967.295 (0xFFFFFF).
Todos los routers capaces de enviar/recibir comunidades BGP deben implementar
comunidades conocidas. A continuación se muestran tres comunidades conocidas
comunes:
■ No_Export: Cuando se recibe una ruta con esta comunidad, la ruta no se anuncia a
ningún peer eBGP. Las rutas con esta comunidad pueden anunciarse a los pares
iBGP.
Habilitación del soporte comunitario de BGP
Los routers IOS e IOS XE no anuncian las comunidades BGP a los peers por defecto. Las
comunidades se habilitan vecino por vecino con el comando de configuración de la familia
de direcciones BGP neighbor ip-address send-community [standard | extended | both] bajo
la configuración de la familia de direcciones del vecino. Si no se especifica una palabra
clave, las comunidades estándar se envían por defecto.
Los nodos IOS XE pueden mostrar las comunidades en el nuevo formato, que es más fácil
de leer, con el comando de configuración global ip bgp-community new-format. El ejemplo
12-19 muestra la comunidad BGP en formato decimal primero, seguido del nuevo formato.
Ejemplo 12-19 Formatos de comunidad BGP
! Formato Decimal
R3# show bgp 192.168.1.1
! Salida omitida por brevedad
Entrada de la tabla de enrutamiento BGP para
192.168.1.1/32, versión 6 Comunidad: 6553602 6577023
! Nuevo formato
R3# show bgp 192.168.1.1
! Salida omitida por brevedad
Entrada de la tabla de enrutamiento BGP para 192.168.1.1/32, versión 6
Comunidad: 100:2 100:23423
En este ejemplo, digamos que se quiere hacer una coincidencia condicional para una
comunidad específica. Se puede mostrar toda la tabla BGP con el comando show bgp afi
safi detail y luego se puede seleccionar manualmente una ruta con una comunidad
específica. Sin embargo, si se conoce la comunidad BGP, se pueden mostrar todas las rutas
con el comando show bgp afi safi community, como se muestra en el Ejemplo 12-21.
Ejemplo 12-21 Visualización de las rutas BGP con una comunidad específica 12
R1# show bgp ipv4 unicast community 333:333 | begin Red
RedSiguiente HopMétrico LocPrf Peso Ruta
*> 10. 23.1.0/2410. 12.1.23330 65200 ?
El ejemplo 12-22 muestra la entrada de ruta explícita para la red 10.23.1.0/24 y todos los
atributos de la ruta BGP. Observe que dos comunidades BGP (333:333 y 65300:333) se
añaden a la ruta.
Ejemplo 12-22 Visualización de los atributos de la ruta BGP para la red 10.23.1.0/24
NOTA Cuando hay varias comunidades en la misma sentencia ip community list, todas las
comunidades para esa sentencia deben existir en la ruta. Si sólo se necesita una de las muchas
comunidades, puede utilizar varias declaraciones de lista de comunidades ip.
El ejemplo 12-23 demuestra la creación de una lista de comunidad BGP que coincide
con la comunidad 333:333. La lista de comunidad BGP se utiliza entonces en la primera
secuencia de
route-map COMMUNITY-CHECK, que niega cualquier ruta con esa comunidad. La
segunda secuencia del mapa de ruta permite todas las demás rutas BGP y establece el
peso BGP (localmente significativo) en 111. El mapa de ruta se aplica a las rutas
anunciadas desde R2 hacia R1.
Ejemplo 12-23 Coincidencia condicional de comunidades BGP
R1
ip community-list 100 permit 333:333
!
route-map COMMUNITY-CHECK deny 10
description Bloquear rutas con la comunidad 333:333
en ella match community 100
route-map COMMUNITY-CHECK permit 20
descripción Permitir rutas con cualquiera de las
comunidades en ella establecer el peso 111
!
router bgp 65100
address-family ipv4 unicast
neighbor 10.12.1.2 route-map COMMUNITY-CHECK in
El ejemplo 12-24 muestra la tabla BGP después de aplicar el mapa de ruta al vecino. El
prefijo de red 10.23.1.0/24 fue descartado, y todas las demás rutas aprendidas del AS
65200 tenían el peso BGP establecido en 111.
Ejemplo 12-24 Tabla BGP de R1 después de aplicar el mapa de rutas
Ahora que se ha aplicado el mapa de ruta y se han refrescado las rutas, se pueden examinar los
atributos de la ruta, como se demuestra en el Ejemplo 12-27. Como se anticipó, las
comunicaciones BGP anteriores se eliminaron para la red 10.23.1.0/24 pero se mantuvieron para
la red 10.3.3.0/24.
Ejemplo 12-27 Verificación de cambios de comunidad BGP
Internet
AS100 AS200
R1 R2
Red empresarial
100.64.1.0/24
100.64.2.0/24
100.64.0.0/16
100.64.1.0/24
100.64.0.0/16
100.64.0.0/16
100.64.2.0/24
Figura 12-10 Selección de la ruta BGP utilizando la coincidencia más larga
Independientemente de la política de enrutamiento de un SP, los prefijos más específicos 12
se anuncian en un solo router. La redundancia se consigue anunciando la dirección de
resumen. Si el R1 falla, los dispositivos utilizan el anuncio de ruta del R2 de 100.64.0.016
para alcanzar la red 100.64.1.0/24.
NOTA Asegúrese de que los resúmenes de red que se anuncian desde su organización están
dentro de su rango de red. Además, los proveedores de servicios no suelen aceptar rutas IPv4
más largas que /24 (por ejemplo, /25 o /26) o rutas IPv6 más largas que /48. Las rutas se
restringen para controlar el tamaño de la tabla de enrutamiento de Internet.
■ Cambio en la redistribución
BGP instala automáticamente la primera ruta recibida como la mejor ruta. Cuando se
reciben rutas adicionales para la misma longitud de prefijo de red, las nuevas rutas se
comparan con la mejor ruta actual. Si hay un empate, el proceso continúa hasta que se
identifica un ganador de la mejor ruta.
El algoritmo de mejor ruta de BGP utiliza los siguientes atributos, en el orden
indicado, para la selección de la mejor ruta:
1. Peso
2. Preferencia local
3. Originado localmente (declaración de red, redistribución o agregación)
4. AIGP
5. Ruta AS más corta
6. Tipo de origen
7. MED más bajo
8. eBGP sobre iBGP
9. Salto siguiente IGP más bajo
10. Si ambas rutas son externas (eBGP), prefiere la primera (la más antigua)
11. Prefiere la ruta que proviene del peer BGP con el RID más bajo
12. Prefiere la ruta con la longitud mínima de la lista de clústeres
13. Prefiere la ruta que proviene de la dirección vecina más baja
La política de enrutamiento BGP puede variar de una organización a otra, basándose en
la manipulación de los PAs BGP. Debido a que algunos PAs son transitivos y llevan de
un AS a otro AS, esos cambios podrían impactar el enrutamiento descendente para otros
SPs, también. Otros PAs son no transitivos y sólo influyen en la política de enrutamiento
dentro de la organización. Red
Los prefijos se emparejan condicionalmente en función de una serie de factores, como la
longitud de la AS_Path, el ASN específico, las comunidades BGP u otros atributos.
El algoritmo de la mejor ruta se explica en las siguientes secciones.
Peso
El peso de BGP es un atributo definido por Cisco y el primer paso para seleccionar la mejor
ruta de BGP. El peso es un valor de 16 bits (0 a 65.535) asignado localmente en el router; no
se anuncia a otros routers. Se prefiere la ruta con mayor peso. El peso puede establecerse
para rutas específicas con un mapa de ruta de entrada o para todas las rutas aprendidas de
un vecino específico. El peso no se anuncia a los pares y sólo influye en el tráfico de salida
de un router o de un AS. Debido a que es el primer paso en el algoritmo de la mejor ruta,
debe ser utilizado cuando otros atributos no deben influir en la mejor ruta para una red
específica.
El ejemplo 12-28 muestra la tabla BGP para el prefijo de red 172.16.1.0/24 en R2. En la
tercera línea de la salida, el enrutador indica que existen dos rutas y que la primera es la
mejor. Al examinar la salida de cada ruta, la ruta aprendida a través del AS 65300 tiene
un peso de 123. La ruta a través del AS 65100 no tiene el peso, lo que equivale a un valor
de 0; por lo tanto, la ruta a través del AS 65300 es la mejor ruta.
Ejemplo 12-28 Ejemplo de elección de la mejor ruta BGP basada en el peso
Preferencia local
La preferencia local (LOCAL_PREF) es un atributo de ruta discrecional bien conocido y
se incluye en los anuncios de ruta en todo un AS. El atributo de preferencia local es un
32- valor de bits (0 a 4.294.967.295) que indica la preferencia de salida del AS hacia la red
de destino. La preferencia local no se anuncia entre pares eBGP y se suele utilizar para
influir en la dirección del siguiente salto para el tráfico de salida (es decir, para salir de un
sistema autónomo). La preferencia local puede establecerse para rutas específicas
utilizando un mapa de ruta o para todas las rutas recibidas de un vecino específico.
Un valor más alto se prefiere sobre un valor más bajo. Si un router BGP de borde no define 12
la preferencia local al recibir un prefijo, el valor de preferencia local por defecto de 100 se
utiliza durante el cálculo de la mejor ruta, y se incluye en los anuncios a otros peers iBGP.
La modificación de la preferencia local puede influir en la selección de la ruta en otros
peers iBGP sin afectar a los peers eBGP porque la preferencia local no se anuncia fuera del
sistema autónomo.
El ejemplo 12-29 muestra la tabla BGP para el prefijo de red 172.16.1.0/24 en R2. En la
tercera línea de la salida, el enrutador indica que existen dos rutas, y la primera es la mejor
ruta. El peso BGP no existe, por lo que se utiliza la preferencia local. La ruta aprendida a
través del AS 65300 es la mejor ruta porque tiene una preferencia local de 333, mientras
que la ruta a través del AS 65200 tiene una preferencia local de 111.
Ejemplo 12-29 Ejemplo de elección de la mejor ruta BGP basada en la preferencia local
AS100
AS200 AS300
IGP 1
IGP 2 IGP 3
R1 R3 R4 R6
R2 R5 R7
Métricas de la ruta
Métricas de la ruta AIGP a R1 y Métricas de la ruta AIGP a R6 y
AIGP a R3, R4, R5, R6
R2 R7
y R7
Métricas de la ruta
AIGP a R1, R2, R3, R4
y R5
Figura 12-11 Intercambio de atributos de ruta AIGP entre sistemas autónomos
Las siguientes directrices se aplican a las métricas de la AIGP:
■ Una ruta con una métrica AIGP es preferible a una ruta sin métrica AIGP.
■ Si la dirección del siguiente salto requiere una búsqueda recursiva, la ruta AIGP
necesita calcular una métrica derivada para incluir la distancia a la dirección del
siguiente salto. Esto garantiza que se incluya el coste hasta el enrutador de borde
BGP. La fórmula es
Métrica AIGP derivada = (métrica AIGP original + métrica AIGRP del siguiente salto)
■ Si existen varias rutas AIGP y una dirección de siguiente salto contiene una
métrica AIGP y la otra no, no se utiliza la ruta no AIGP.
■ La métrica AIGP del siguiente salto se añade recursivamente si se realizan varias búsquedas.
■ Las rutas AIGP se comparan basándose en la métrica AIGP derivada (con saltos
siguientes recursivos) o en la métrica AIGP real (salto siguiente no recursivo). Se
prefiere la ruta con la métrica AIGP más baja.
■ Cuando un router R2 anuncia una ruta habilitada para AIGP que se aprendió del
R1, si la dirección del siguiente salto cambia a una dirección de R2, R2 incrementa
la métrica AIGP para reflejar la distancia (la métrica de la ruta IGP) entre R1 y R2.
NOTA Los ASN se repiten en la primera entrada, lo que indica que el AS 65300 preanunció su
anuncio BGP para dirigir el tráfico de la red.
Tipo de origen
El siguiente factor de decisión de la mejor ruta de BGP es el conocido atributo obligatorio
de BGP llamado origen. Por defecto, las redes que se anuncian a través de la declaración
de red se establecen con el origen IGP o i, y a las redes redistribuidas se les asigna el
atributo de origen Incompleto o ? El orden de preferencia del origen es
NOTA Para que MED sea un factor de decisión eficaz, los trayectos sobre los que se decide
deben proceder del mismo ASN.
Las directrices del RFC 4451 establecen que un prefijo sin valor MED debe tener prioridad
y, en esencia, debe compararse con un valor 0. Algunas organizaciones exigen que se
establezca un MED con un valor específico para todos los prefijos y declaran que las rutas
sin el MED deben
se tratará como la menos preferida. Por defecto, si falta el MED de un prefijo aprendido de
un peer eBGP, los dispositivos utilizan un MED de 0 para el cálculo de la mejor ruta. Los
routers IOS anuncian un MED de 0 a los peers iBGP.
El Ejemplo 12-32 muestra la tabla BGP para el prefijo de red 172.16.1.0/24 en el R2.
Obsérvese que el R2 está haciendo peering sólo con el AS 65300 para que MED sea
elegible para la selección de la mejor ruta
proceso. El primer camino tiene un MED de 0, y el segundo camino tiene un MED de 33. Se
prefiere el primer camino porque el MED es menor.
Ejemplo 12-32 Ejemplo de elección de la mejor ruta BGP basada en MED 12
R2# show bgp ipv4 unicast 172.16.1.0
Entrada de la tabla de enrutamiento BGP para
172.16.1.0/24, versión 9 Rutas: (2 disponibles, mejor
#1, tabla por defecto)
Anunciado a los grupos de
actualización: 2
Actualizar la época 4
65300
10.12.1.1 desde 10.12.1.1 (192.168.1.1)
Origen IGP, métrica 0, localpref 100, válido, externo, best
Refresh Epoch 14
65300
10.23.1.3 desde 10.23.1.3 (192.18.3.3)
Origen IGP, métrica 33, localpref 100, válido, externo
NOTA Es posible que el SP se olvide de anunciar el MED de ambos peers y configure sólo
uno. Esto podría tener consecuencias no deseadas y se puede solucionar fácilmente.
NOTA Las confederaciones BGP están fuera del alcance del examen CCNP y CCIE Enterprise
Core ENCOR 350-401 y no se tratan en este libro.
10.1.23.0/2
10.1.12.
R2 4 R3
0/24
172.16.0.0/24
172.16.0.0/2
10.24.1.0/24
10.1.35.0/24
4
AS400
R1
AS10
0 10.1.14.
0/24 172.16.0.0/24
R4 10.1.45.0/2 R5
4
Red Next- Métri Red Next- Métri
Hop
* i 172.16.0.0/24 192.168.2.2 Hop
* i 172.16.0.0/24 192.168.2.2
ca 10 ca 20
*>
10.1.14.1 1 *> 192.168.4.4 10
i i
ID del router
El siguiente paso del algoritmo de mejor ruta de BGP es seleccionar la mejor ruta
utilizando el ID de enrutador más bajo del enrutador eBGP anunciante. Si la ruta fue
recibida por un reflector de ruta, entonces el ID del originador es sustituido por el ID del
enrutador.
NOTA Los reflectores de ruta BGP están fuera del alcance del examen CCNP y CCIE
Enterprise Core ENCOR 350-401 y no se tratan en este libro.
Capítulo 12: BGP avanzado 323
172.16.0.0/24
10.12.1.0/24
.1 AS100 .2
R1R2
10.12.2.0/24
Lista de control de acceso (ACL) de la ruta AS, comunidad BGP, multihoming BGP,
lista de distribución, lista de prefijos, expresión regular (regex), mapa de ruta,
enrutamiento de tránsito