BGP
LACNIC XII
Programa
Introducción y Repaso
Uso de atributos de BGP
Implementando iBGP
Implementando eBGP
Enfasis en Estabilidad, Escalabilidad y
Ejemplos de Configuraciones
Repaso de BGP
3
Introducción
Protocolo Distancia
Directamente Conectada 0
Estática 1
eBGP 20
EIGRP (Interno) 90
IGRP 100
OSPF 110
ISIS 115
RIP 120
EGP 140
EIGRP (Externo) 170
iBGP 200
BGP Local 200
Desconocido 255
Resultado Deseado?
Implementación de políticas de
enrutamiento que sean:
Escalable
Estable
Retiros
Atributos
Prefijos
(NLRI - Network-Layer
Reachability Information)
Atributos de BGP Utilizados para Definir la
Política de Enrutamiento
Router A
router bgp 109
neighbor 131.108.10.2 remote-as 110 .2 B
150.10.0.0
AS 110
BGP Interno
Vecinos en el mismo AS
No se modifica el Next-hop A B
No necesariamente con
conexión directa
No anuncia otras rutas
aprendidas por iBGP
Router B:
router bgp 109
neighbor 131.108.30.2 remote-as 109
Router A:
router bgp 109
neighbor 131.108.20.1 remote-as 109
Atributos de BGP: NEXT_HOP
C 192.0.0.0/24 150.1.1.3
150.1.1.1 150.10.0.0/16 150.10.1.1
192.0.0.0/24 150.10.1.1
3rd Party EBGP
IBGP next-hop unmodified
150.1.1.2 150.1.1.3
690 1883
1755 1880
200 209
680
660
666
660
Communities:
1:100—customer routes Set Community
1:80
1:80—peer routes
CORE Peer A
Match Community
1:100
Match Community
Match Community
1:100 1:80
1:100
Set Community
1:100
Cliente A Cliente B
Todas las rutas Rutas de Clientes
Atributo de BGP: COMMUNITY
Highest WEIGHT
Highest LOCAL PREFERENCE
LOCALLY ORIGINATED (eg network/aggregate)
Shortest AS-PATH
Lowest ORIGIN (IGP < EGP < incomplete)
Lowest MED
EBGP
IBGP
Lowest IGP METRIC to next-hop
Oldest external path
Router with lowest Router ID
Shortest CLUSTER_LIST length
Lowest Neighbor IP address
Sincronización
690
A 1880
B 209
32
Guías para un iBGP Estable
eBGP
RR Router id
140.10.1.1
ORIGINATOR_ID
Router ID del vecino iBGP qye refleja rutas del cliente
RR a no clientes
Sobrepasado por: bgp cluster-id x.x.x.x
De uso para resolver problemas y chequear por
relaciones circulares
Atributos de BGP: CLUSTER_LIST
CLUSTER_LIST
Cadena de ORIGINATOR_IDs a través de los cuales la
ruta ha pasado
De uso para resolver problemas y chequear
relaciones circulares
Hasta Ahora…
Consideraciones de Clientes
Consideraciones de ISPs
45
Consideraciones de Clientes
Procedimiento
Configure BGP (use passwords para la sesión!)
Genere una ruta agregada estable
Configure la política de entrada
Configure la política de salida
Configure loadsharing/multihoming
Conectandose a un ISP
10.60.0.0
AS100
Que es agregación?
Loopback 0
A 10.200.0.2
200
100
Balanceo de Cargas—Multiples Caminos
desde el mismo AS
Router A:
router bgp 100
neighbor 10.200.0.1 remote-as 200
neighbor 10.300.0.1 remote-as 200
maximum-paths 6
A 200
100
Qué es Multihoming?
AS 100
160.10.0.0/16
AS 200 AS 300
D E
0.0.0.0 0.0.0.0
A B
AS 400 C Selecciona el IGP
con la métrica más
baja para Default
C
Clientes+Default de Todos los
Proveedores
Cliente
AS 100
160.10.0.0/16
Proveedor Proveedor
AS 200 AS 300
D E
A B
C Selecciona
AS 400
el camino AS más
corto
C
Rutas de Clientes de Todos los
Proveedores
Cliente
AS 100
160.10.0.0/16
Proveedor Proveedor
AS 200 AS 300
D 800 E
AS 100 AS 500
AS 200 AS 300
D E
A B
AS 400
C Selecciona el
camino más corto C
Controlando la Entrada de Tráfico?
Buen Ciudadano :
Divide el espacio de direcciones
Usa “advertise maps”
Usando “AS-PATH prepend”
Proveedor Proveedor
AS 200 AS 300
D E
A B
AS 400 ip prefix-list AS100 permit 10.1.0.0/16
10.1.0.0 route-map AS300out permit 10
C match ip address prefix-list AS100
set as-path prepend 400
Usando un “Advertise-Map”
R2 R4
10.15.7/24
1.10.6/24
1.10.6.1
10.15.7.4
Hasta Ahora…
CORE
Route Reflector
Router de Agregación
(Cliente RR)
Cliente Peer Group
Escalabilidad:
Uso de atributos, especialmente comunidad (community)
Uso de peer-groups y route-reflectors
Estabilidad:
Uso de dirección de loopback para el iBGP
Generación de agregados
Aplicación de claves
Siempre filtrar anuncios de entrada y salida
Resumen
Simplicidad—soluciones estandares:
Tres opciones de multihoming
Agrupar clientes en comunidades
Aplicación de políticas estandares en el borde
Evitar “configuraciones especiales”
Automatice la generación de la configuracion (RR &
RtConfig)
AS23456
• AS 23456 (IANA-ASTRANS) es utilizado como el número de AS cada vez que
un AS de 32-bits tiene que ser representado en un enrutador que no entiende
ASN de 32-bits
• El AS vecino en mensajes de OPEN
• En el AS-PATH en mensajes de actualización
• Como el AGGREGATOR en mensajes de actualización
• Es un número de AS valido (no un bogon)
• Capacidad de soporte de ASN de 32-bits definido durante el proceso de
negociación
• Nuevos attributos
• AS4_PATH
• AS4_AGGREGATOR
• Comunidades extendidas para VPN
Route_Target (RT)
Site_of_Origin (SOO)
• Cuatro (4) trucos para la transición
• Si 0 < ASN < 65536 usa ASN, sino usa 23456 como el ASN
• Durante anuncios hacer la misma conversion mas arriba
• Si el ASN > 65536 usar, ademas, nuevos atributos AS4_PATH y
AS4_AGGREGATOR
• Si se recibe una actualización de un viejo BGP, utiliza ambos AS_PATH y
AS4_PATH para reconstruir el camino
AS23456
• Como luce:
Cisco (www.cisco.com)
Dave Meyer (dmm@cisco.com)
John Stewart, BGP4, Addison Wesley
Sam Halabi, “Internet Routing Architectures”, Cisco Press
Randy Zhang, “BGP Design and Implementation”, Cisco
Press
RFCs
Ejemplos de filtros para clientes