SlideShare una empresa de Scribd logo
Implementando BGP
Taller WALC 2002
Mayo 6 – 10
Santo Domingo, República Dominicana
Programa
 Uso de atributos de BGP
 Implementando IBGP
 Implementando EBGP
 Enfasis en Estabilidad, Escalabilidad
y Ejemplos de Configuraciones
3
Repaso de BGP
Por qué utilizarlo?
Resultado Deseado?
 Implementación de políticas de
enrutamiento que sean:
 Escalable
 Estable
 Simple (o eso esperamos!)
Más Detalles...
 Necesitas escalar su IGP
 Eres un cliente con dos conexiones a ISPs
 Necesitas transitar todas las rutas en
Internet
 Necesitas implementar una politica de
enrutamiento, o expandir las políticas de QoS
Retiros
Atributos
(NLRI - Network-Layer
Reachability Information)
Prefijos
Actualizaciones de BGP
Atributos de BGP Utilizados
para Definir la Política de
Enrutamiento
1: ORIGIN
2: AS-PATH
3: NEXT-HOP
4: MED
5: LOCAL_PREF
6: ATOMIC_AGGREGATE
 7: AGGREGATOR
 8: COMMUNITY
 9: ORIGINATOR_ID
 10: CLUSTER_LIST
 14: MP_REACH_NLRI
 15: MP_UNREACH_NLRI
BGP Externo (eBGP)
AS 109
AS 110
131.108.0.0
A
B
150.10.0.0
131.108.10.0
.1
.2
 Router B
router bgp 110
neighbor 131.108.10.1 remote-as 109
 Router A
router bgp 109
neighbor 131.108.10.2 remote-as 110
•Entre router en AS diferentes
•Usualmente con conexióm directa
•Con next-hop apuntando a si mismo
A B
BGP Interno
 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
• Vecinos en el mismo AS
• No se modifica el Next-hop
• No necesariamente con
conexión directa
• No anuncia otras rutas
aprendidas por iBGP
Modificando los defaults:
Solo para EBGP NLRI:
neighbor x.x.x.x next-hop-self
Modificando con route-map:
set ip next-hop { A.B.C.D | peeraddress}
AS 300
AS 200
150.10.0.0/16 E
F
192.0.0.0/24
AS 201
AS 301
A
C
D
B
150.1.1.1
150.10.1.1 150.10.1.2
EBGP—next-hop set to self
3rd Party EBGP
Atributos de BGP: NEXT_HOP
150.1.1.2 150.1.1.3
IBGP next-hop unmodified
150.10.0.0/16 150.10.1.1
192.0.0.0/24 150.10.1.1
192.0.0.0/24 150.1.1.3
1880
193.0.34/24
1882
193.0.35/24
1881
193.0.33/24
A: 193.0.33/24 1880 1881
B: 193.0.34/24 1880
C: 193.0.32/24 1880 1883
E: 193.0.32/22 1880 {1881, 1882,1883}
1883
193.0.32/24
A
B
D
E
Problema: Detección de Loop,
Políticas
Solución: AS-PATH
 Secuencia de ASs
Lista de AS por los que la
ruta ha pasado
 Conjunto de AS (AS Set)
Sumariza la secuencia de
ASs
El order de la secuencia
se pierde
 Prefijo con route-map:
set as-path
C
1755
690
200
1880
1883
209
Problema: Indicar mejor camino a
Solución: MED
 Informa sobre la preferencia de punto de entrada
 Se compara si los caminos son del mismo AS
A no ser que se us “bgp always-compare-med”
 Es un atributo no-transitivo
 route-map: set metric
set metric-type internal
1755 1880
690
660
Problema: Sobrepasando As-
path/MED?
Solución: LOCAL PREFERENCE
 Atributo es local al AS — mandatorio para las
actualizaciones de iBGP
 route-map: set local-preference
680
Problema: Sobrepasando Local
Preference
Solución: WEIGHT
 Local al router en que es configurado
 route-map: set weight
 El mayor peso (weight) gana sobre todos los caminos
válidos
1755 1880
666
690
660
CORE
Cliente A
Todas las rutas
Cliente B
Rutas de Clientes
Peer A
Communities:
1:100—customer routes
1:80—peer routes
Match Community
1:100
Set Community
1:80
Match Community
1:100 1:80
Match Community
1:100
Set Community
1:100
Problema: Escalando Políticas de
Enrutamiento
Solución: COMMUNITY
Atributo de BGP: COMMUNITY
 Agrupa los destinos para ayudar a
escalar la aplicación de políticas
 Comunidades Típicas:
 Destinos aprendidos de los clientes
 Destinos aprendidos de los peers
 Destinos en la VPN
 Destinos que reciben tratamiento
preferencial en la cola
Atributos de BGP:
COMMUNITY
 Activación por neighbor/peer-group:
 neighbor {peer-address | peer-group-
name} send-community
 Transferidos a través de ASs
 Formato común es una cadena de 4
bytes: <AS>:[0-65536]
Atributos de BGP:
COMMUNITY (Cont.)
 Cada destino puede ser miembro de varias
comunidades
 Route-map: set community
<1-4294967295> número de comunidad
aa:nn número de comunidad en formato aa:nn
additive Añade a una comunidad existente
local-AS No enviar a los peers EBGP (well-known community)
no-advertise No enviar a ningún peer (well-known community)
no-export No exportar fuera del AS/Conf. (well-known community)
none No atributo de comunidad
Atributo de menor uso:
ORIGIN
 IGP—creado con comando network en la
configuración de BGP
 EGP—Redistribuido de EGP
 Incomplete—Redistribute IGP en la
configuración de BGP
 NOTA: siempre usar route-map para
modificar: set origin igp
Comando set en un route-map
 as-path Añade una cadena de AS para el atributo
AS-PATH
 comm-list set BGP community list (for deletion)
 community Atributo de Comunidad
 dampening Configura parámetros para dampening
 local-preference Atributo de preferencia local de BGP
 metric Valor Metric para el protocolo de
enrutamiento
 origin Codigo de origen BGP
 weight Peso BGP para la tabla de enrutamiento
 ip next-hop { A.B.C.D | peer-address }
75k1#sh ip bgp 10.0.0.0
BGP routing table entry for 10.0.0.0/24, version 139267814
Paths: (1 available, best #1)
Not advertised to any peer
65000 64000 {100 200}, (aggregated by 64000 16.0.0.2)
10.0.10.4 (metric 10) from 10.0.0.1 (10.0.0.2)
Origin IGP, metric 100, localpref 230, valid, aggregated
internal (or external or local),
atomic-aggregate, best
Community: 64000:3 100:0 200:10
Originator: 10.0.0.1, Cluster list: 16.0.0.4, 16.0.0.14
Atributos de BGP
! AS-PATH
as
AS ID
! NEXT-HOP IGP METRIC PEER-IP PEER-ID
Mayor WEIGHT
Mayor LOCAL PREFERENCE
ORIGINADA LOCALMENTE (eg network/aggregate)
Más Corto AS-PATH
Menor ORIGIN (IGP < EGP < incomplete)
Menor MED
EBGP
IBGP
Menor IGP METRIC al next-hop
Algoritmo Básico Para Decidir
Considera solo las rutas sincronizadas sin referencia
circular y un next-hop válido, entonces prefiere:
Sincronización
1880
209
690
B
A
• Asegurarse de que los next-hops del iBGP pueden
ser vistos via IGP, entonces:
router bgp 1880
no synchronization
• Router A no anunciará los prefijos de AS209 hasta
que haya convergencia en el IGP.
router bgp 100
no synchronization
no auto-summary
distance 200 200 200
Consideraciones Generales
 Sincronización: no requerida si se tiene
una maya iBGP completa
 => No dejar que BGP tenga prioridad
sobre IGP
 auto-summary: no. En su lugar usar
comandos de agregación:
Hasta Ahora …
 Aplicar las políticas en base al AS
 Agrupar las rutas usando comunidades
 Seleccionar los puntos de entrada y salida
para grandes grúpos de políticas usando
MEDs y preferencia local
Pueden tús políticas escalar?
26
Implementando iBGP
Route Reflectors, Peer Groups
Guías para un iBGP Estable
 Establecer la conexión usando direcciones de
loopback
 neighbor { ip address | peer-group}
update-source loopback0
 Independiente de fallos de la interfase física
 Balanceamiento de la carga es realizado por el
IGP
Guía Para Escalar iBGP
 Usar peer-group y route-reflector
 Solo llevar next-hop en el IGP
 Solo llevar todas las rutas en BGP si es
necesario
 No redistribuir BGP en el IGP
Usando Peer-Groups
iBGP Peer Group
Peer Group
con todas
las rutas
Peer Group
“Default”
Peer Group
Rutas de
Clientes
eBGP
Qué es un peer-group?
 Todos los miembros del peer-group
tienen una política de salida común
 Actualizaciones generadas solo una
vez para el peer-group
 Simplifica la configuración
 Miembros pueden tener diferentes
políticas de entrada
n=1000 => casi
medio millón de
sesiones iBGP!
Por qué usar Route-
Reflectors?
Para evitar una maya con
N(n-1)/2 sesiones
13 Routers =>
78 Sesiones
iBGP!
Usando Route-Reflectors
Regla para evtar un
circulo de RR:
Topología de RR
debe reflejar la
topología física
Backbone
RR
RR
RRC
Grupo A
RR
RR
RRC
Grupo B
RRC
Grupo D
RR
RRC
Grupo C
RR
Qué es un Route-Reflector?
 El Reflector recibe información de
clientes y no clientes
 Si el mejor camino es de un cliente,
reflejarlo a clientes y no clientes
 Si el mejor camino es de no-cliente,
reflejarlo a los clientes
Desplegando Route-Reflectors
 Divida el backbone en varios grupos
 Cada grupo contiene al menos 1 RR
(multiples para redundancia), y multiples
clientes
 Los RRs crean una maya completa de iBGP
 Utilizar solo un IGP—next-hop que no es
modificado por el RR
Route-Reflector Jerárquico
 Ejemplo:
RouterB>sh ip bgp 198.10.0.0
BGP routing table entry for 198.10.10.0/24
3
141.153.14.2 from 141.153.30.1 (140.10.1.1)
Origin IGP, metric 0, localpref 100, valid, internal, best
C
RR
D
A
RRC Router id
141.153.17.1
Router id
140.10.1.1
141.153.30.1
141.153.14.2
Router id
141.153.17.2
198.10.0.0
AS3
B
RRC
RR
Originator: 141.153.17.2
Cluster list: 144.10.1.1, 141.153.17.1
Atributos de BGP:
ORIGINATOR_ID
 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…
 Es la conexión iBGP Estable?
 Use loopbacks para la conexión
 Escalará?
 Use peer-groups
 Use route-reflectors
 Simple, configuración jerárquica?
39
Desplegando eBGP
Consideraciones de Clientes
Consideraciones de ISPs
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
AS 200
AS100
10.0.0.0
A
B
10.60.0.0
10.200.0.0
.1
.2
Conectandose a un ISP
Router B:
router bgp 109
aggregate-address 10.60.0.0 255.255.0.0 summary-only
neighbor 10.200.0.1 remote-as 200
neighbor 10.200.0.1 route-map ispout out
neighbor 10.200.0.1 route-map ispin in
• AS 100 es un cliente de AS 200
• Usualmente con conexión
directa
Que es agregación?
 Sumarización basada en rutas
específicas la tabla de enrutamiento
BGP
 10.1.1.0 255.255.255.0
 10.2.0.0 255.255.0.0
 => 10.0.0.0 255.0.0.0
Cómo Agregar?
 aggregate-address 10.0.0.0 255.0.0.0 {as-
set} {summary-only} {route-map}
 Use as-set para incluir la información de
camino y comunidad basado en las rutas
específicas
 summary-only suprime las rutas específicas
 route-map para configurar otros atributos
Por qué Agregar?
 Reducir el número de prefijos a anunciar
 Incrementar estabilidad — rutas agregadas se
mantienen aún si las específicas son inestables
 Generación de rutas agragadas estables:
 router bgp 100
 aggregate-address 10.0.0.0 255.0.0.0 as-set summary-only
 network 10.1.0.0 255.255.0.0
 :
 ip route 10.1.0.0 255.255.0.0 null0
Atributos de BGP:
Atomic Aggregate
 Indica perdida de información de AS-PATH
 No debe ser removido una vez configurado
 Configuración: aggregate-address x.x.x.x
 No configurado si la clave as-set es utilizada,
AS-SET y COMMUNITY contienen la
información sobre las rutas específicas
Atributos de BGP: Aggregator
 Número de AS e IP del enrutador
generando el agregado
 De uso para resolver problemas
Atributos de Agregación
 NEXT_HOP = local (0.0.0.0)
 WEIGHT = 32768
 LOCAL_PREF = ninguna (asume 100)
 AS_PATH = AS_SET o nada
 ORIGIN = IGP
 MED = ninguna
Por qué una Política de
Entrada?
 Aplicar una comunidad reconocible para usar en los
filtros de salida u otras políticas
 Configurar local-preference para modificar el
default de 100
 Balanceo de las cargas en ambientes de conexión
dual—ver mas adelante
 route-map ISPin permit 10
 set local-preference 200
 set community 100:2
Por qué una política de Salida?
 El filtrado de prefijos de salida ayuda a
protegernos contra errores (también podemos
aplicar filtros de comunidades y as-path)
 Enviar comunidades basado en acuerdos con el
ISP
 route-map ISPout permit 10
 match ip address prefix-list outgoing
 set community 100:1 additive
100
200
A Loopback 0
10.200.0.2
Balanceo de Cargas —Un ISP
Router A:
interface loopback 0
ip address 10.60.0.1 255.255.255.255
!
router bgp 100
neighbor 10.200.0.2 remote-as 200
neighbor 10.200.0.2 update-source loopback0
neighbor 10.200.0.2 ebgp-multi-hop 2
100
200
A
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
Qué es Multihoming?
 Conectarse a dos o más ISPs para
incrementar:
 Confiabilidad—si un ISP falla, todavía
funciona
 Desempeño—mejores caminos a
destinos comunes en Internet
Tipos de Multihoming
 Tres casos comunes:
 Ruta Default de todos los proveedores
 Rutas de Clientes+default de todos
 Rutas completas de todos
Default de Todos los
Proveedores
 Solución bajos requerimientos de memoria/CPU
 Proveedor default de BGP => proveedor decide
basado en la métrica de IGP cual es el default
 Tu envias todas tus rutas al proveedor =>
camino de entrada decidido por el Internet
 Tu puedes influenciar agregando tu AS varias
 veces (AS-path prepend)
Default de Todos los
Proveedores
AS 400
AS 200
AS 100
160.10.0.0/16
AS 300
E
B
C
A
D
0.0.0.0 0.0.0.0
C Selecciona el IGP
con la métrica más
baja para Default
Clientes+Default de Todos
los Proveedores
 Uso mediano de memoria y CPU
 “Mejor” camino—usualmente el camino AS
(AS PATH) más corto
 Uso de local-preference para modificar
basado en prefijo, as-path, o comunidad
 Métrica de IGP al default usado para todos
los destinos
Rutas de Clientes de Todos los
Proveedores
AS 400
Proveedor
AS 200
Cliente
AS 100
160.10.0.0/16
Proveedor
AS 300
E
B
A
D
C Selecciona
el camino AS más
corto
C
Proveedor
AS 300
AS 400
Proveedor
AS 200
D
ip prefix-list AS100 permit
16.10.0.0/16
route-map AS300in permit 10
match ip address prefix-list AS100
set local-preference 800
Rutas de Clientes de Todos los
Proveedores
800
Cliente
AS 100
160.10.0.0/16
B
A
AS 400
E
C Selecciona la
mayor
Local-Preference
C
Rutas Completas de Ambos
Proveedores
 Solución de mayores requerimientos de
memoria/CPU
 Alcanza todos destinos basado en el “mejor”
camino—usualmente el que tiene el camino
mas corto
 Todavía puede ajustar manualmente usando
local-pref y comparación de as-
path/comunidad/prefijo
AS 400
AS 200
AS 100
AS 300
B
C
A
E
D
AS 500
C Selecciona el
camino más corto
Rutas Completas de Ambos
Proveedores
Controlando la Entrada de
Tráfico?
 La entrada es muy dificil de controlar
debido a la falta de una métrica
transitiva
 Puedes dividir los anuncios de prefijos
entre los proveedores, pero entonces,
que pasa con la redundancia?
Controlando la Entrada de
Tráfico? (Cont.)
 Buen Ciudadano :
 Divide el espacio de direcciones
 Usa “advertise maps”
• Mal Ciudadano Internet:
•Divide el espacio de direcciones
•Usa “as-path prepend”
Usando “AS-PATH prepend”
AS 400
10.1.0.0
Proveedor
AS 200
Cliente
AS 100
Proveedor
AS 300
E
B
C
A
D
ip prefix-list AS100 permit 10.1.0.0/16
route-map AS300out permit 10
match ip address prefix-list AS100
set as-path prepend 400
10.1.0.0/16 300 400 400
10.1.0.0/16 200 400 (Mejor)
ISP1
ISP2
R1
R2
R3
1.10.6/24
10.15.7/24
1.10.6.1
10.15.7.4
1.10.6/24 10.15.7/24
10.15.7/24 auto-inject
10.15/16
access-list 1 permit 10.15.7.0 !Anuncia cuando...
access-list 2 permit 10.15.0.0 !… este desaparece
neighbor <R1> advertise-map am non-exist-map bb
route-map am permit 10
match ip address 1
route-map bb permit
match ip address 2
Usando un “Advertise-Map”
R4
1.10/16
Hasta Ahora…
 Estabilidad por Medio de:
 Agregación
 Multihoming
 Filtrado de Entreda/Salida
 Escalabilidad de memoria/CPU:
 Default, rutas de clientes, todas las rutas
 Simplicidada usando soluciones “estandares”
Consideraciones de ISPs
 Escalar la agragación de clientes en BGP
 Ofrecer una selección del número de rutas a
anunciar
 Intercambio con otros proveedores
 Minimizar la actividad de BGP y protegerse
contra los problemas de configuración de los
clientes
 Proveer un servicio alternativo
 Propagar una política de Calidad de Servicio
Guías para el Agregado de
Clientes
 Definir por los menos tres “peer-groups”:
 cliente-default — envía solo default
 cliente-cliente — envía solo las rutas de clientes
 Cliente-completo — envía todas las rutas
 Identificar las rutas a traves de comunidades
 2:100=clientes; 2:80=peers
 Aplicar claves y un “prefix-list” para cada vecino
BGP
Agregado de Clientes
CORE
Route Reflector
Cliente Peer Group
Router de Agregación
(Cliente RR)
NOTA: Aplicar claves y “prefix-list” de
entrada para cada Cliente
Rutas de Clientes
Peer Group
“Default”
Peer Group
Rutas Completas
Peer Group
Cliente-completo peer-group
neighbor cliente-completo peer-group
neighbor cliente-completo description Envía todas las rutas
neighbor cliente-completo remove-private-AS
neighbor cliente-completo version 4
neighbor cliente-completo route-map cliente-entrada in
neighbor cliente-completo prefix-list cidr-block out
neighbor cliente-completo route-map rutas-completas out
.
ip prefix-list cidr-block seq 5 deny 10.0.0.0/8 ge 9
ip prefix-list cidr-block seq 10 permit 0.0.0.0/0 le 32
route-map de salida para
cliente-completo
ip community-list 1 permit 2:100
ip community-list 80 permit 2:80
.
route-map rutas-completas permit 10
match community 1 80 ; clientes & peers
set metric-type internal ; MED = métrica IGP
set ip next-hop peer-address ; la nuestra
route-map cliente-entrada
route-map cliente-entrada permit 10
set metric 4294967294 ; ignora MED
set ip next-hop peer-address
set community 2:100 additive
cliente-cliente peer-group
neighbor cliente-cliente peer-group
neighbor cliente-cliente description Rutas de Clientes
neighbor cliente-cliente remove-private-AS
neighbor cliente-cliente version 4
neighbor cliente-cliente route-map cliente-entrada in
neighbor cliente-cliente prefix-list cidr-block out
neighbor cliente-cliente route-map rutas-clientes out
route-map rutas-clientes
route-map rutas-clientes permit 10
match community 1 ; solo clientes
set metric-type internal ; MED = métrica igp
set ip next-hop peer-address ; la nuestra
route-map ruta-default
neighbor cliente-default peer-group
neighbor cliente-default description Envía Default
neighbor cliente-default default-originate
route-map ruta-default
neighbor cliente-default remove-private-AS
neighbor cliente-default version 4
neighbor cliente-default route-map cliente-entrada
neighbor cliente-default prefix-list niega-todo out
ip prefix-list niega-todo seq 5 deny 0.0.0.0/0 le 32
route-map ruta-default
route-map ruta-default permit 10
set metric-type internal ; MED = métrica igp
set ip next-hop peer-address ; la nuestra
Peer Groups para Puntos de
Intercambio
 Similar al EBGP para agregado de clientes
excepto que no se usa el filtrado de prefijos
(porque no hay un registro)
 En su lugar se usa maximum-prefix y
chequeos de sanidad de prefijos
 Continua usando claves para cada vecino!
Peer Groups para Puntos de
Intercambio (Cont.)
neighbor nap peer-group
neighbor nap descripción de ISP
neighbor nap remove-private-AS
neighbor nap version 4
neighbor nap prefix-list chequeo sanidad in
neighbor nap prefix-list cidr-block out
neighbor nap route-map nap-salidas out
neighbor nap maximum prefix 30000
Peer Groups para Puntos de
Intercambio (Cont.)
route-map nap-salida permit 10
match community 1 ; solo clientes
set metric-type internal ; MED = métrica IGP
set ip next-hop peer-address ; la nuestra
Peer Groups para Puntos de Intercambio :
Prefix-List chequeo-sanidad
# Primero filtramos nuestro espacio de direcciones!!
ip prefix-list chequeo-sanidad seq 5 deny 0.0.0.0/32
# no aceptamos default
ip prefix-list chequeo-sanidad seq 10 deny 0.0.0.0/8 le 32
# no aceptamos nada que comience con 0
ip prefix-list chequeo-sanidad seq 15 deny 0.0.0.0/1 le 32
# no aceptamos mascaras > 20 para todas las redes clase A (1-127)
ip prefix-list chequeo-sanidad seq 15 deny 0.0.0.0/8 ge 20
# no aceptamos 10/8 per RFC1918
ip prefix-list chequeo-sanidad seq 20 deny 10.0.0.0/8 le 32
# reservado por IANA – dirección de loopback
ip prefix-list chequeo-sanidad seq 25 deny 127.0.0.0/8 le 32
# no acepta mascaras >= 17 para todas las redes clase B (129-191)
ip prefix-list chequeo-sanidad seq 30 deny 128.0.0.0/2 ge 17
# no acepta la red 128.0 – reservado por IANA
ip prefix-list chequeo-sanidad seq 35 deny 128.0.0.0/16 le 32
Peer Groups for NAPs:
Prefix-List chequeo-sanidad
# no acepta 172.16 por RFC1918
ip prefix-list chequeo-sanidad seq 40 deny 172.16.0.0/12 le 32
# no acepta clase C 192.0.20.0 reservado por IANA
ip prefix-list chequeo-sanidad seq 45 deny 192.0.2.0/24 le 32
# no acepta clase C 192.0.0.0 reservado por IANA
ip prefix-list chequeo-sanidad seq 50 deny 192.0.0.0/24 le 32
# no acepta 192.168/16 por RFC1918
ip prefix-list chequeo-sanidad seq 55 deny 192.168.0.0/16 le 32
# no acepta 191.255.0.0 – reservado por IANA (Creo ??)
ip prefix-list chequeo-sanidad seq 60 deny 191.255.0.0/16 le 32
# no acepta mascaras > 25 para clase C (192-222)
ip prefix-list chequeo-sanidad seq 65 deny 192.0.0.0/3 ge 25
# no acepta nada en red 223 – reservado por IANA
ip prefix-list chequeo-sanidad seq 70 deny 223.255.255.0/24 le 32
# no acepta clase D/Experimental
ip prefix-list chequeo-sanidad seq 75 deny 224.0.0.0/3 le 32
Resumen
 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)
Referencias:
 John Stewart, BGP4, Addison Wesley
 Sam Halabi, “Internet Routing Architectures”,
Cisco Press
 RFCs
ip prefix-list anuncia-mi-prefijo seq 10 permit <numero_red>/<mascara> ge 23
ip prefix-list anuncia-mi-prefijo seq 100 deny 0.0.0.0/32 le 32
ip prefix-list acepta-default seq 10 permit 0.0.0.0/0 ge 32
ip prefix-list acepta-default seq 100 deny 0.0.0.0/0 le 31
access-list 10 permit <numreo_red> <mascara_wildcard>
access-list 10 deny any
access-list 20 permit 0.0.0.0 0.0.0.0
access-list 20 deny any
Ejemplos de filtros para clientes

Más contenido relacionado

Similar a dr2-spanish.ppt

B3 eigrp sp
B3 eigrp spB3 eigrp sp
B3 eigrp sp
1 2d
 
Bgp
BgpBgp
Exploration routing chapter_2
Exploration routing chapter_2Exploration routing chapter_2
Exploration routing chapter_2
Elkin Martin
 
Rip e igrp
Rip e igrpRip e igrp
Rip e igrp
Jorge Arroyo
 
BGP - Border Gateway Protocol v3.0
BGP - Border Gateway Protocol v3.0BGP - Border Gateway Protocol v3.0
BGP - Border Gateway Protocol v3.0
Gianpietro Lavado
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2
Jonathan
 
Exploration routing chapter_2
Exploration routing chapter_2Exploration routing chapter_2
Exploration routing chapter_2
Jorge Arroyo
 
Eigrp
EigrpEigrp
5. fundamentos de bgp
5. fundamentos de bgp5. fundamentos de bgp
5. fundamentos de bgp
Marcos Daniel
 
Configurar eigrp cisco
Configurar eigrp  ciscoConfigurar eigrp  cisco
Configurar eigrp cisco
JAV_999
 
Ccn pm1ch02 v5
Ccn pm1ch02 v5Ccn pm1ch02 v5
Ccn pm1ch02 v5
sasuukee
 
Enrutamiento estatico
Enrutamiento estaticoEnrutamiento estatico
Enrutamiento estatico
Universidad Tecnica de Ambato
 
Ruteo Dinamico
Ruteo DinamicoRuteo Dinamico
Ruteo Dinamico
Rod Hinojosa
 
Curso mpls bgp-qo s teoria y labs final
Curso mpls bgp-qo s teoria y labs finalCurso mpls bgp-qo s teoria y labs final
Curso mpls bgp-qo s teoria y labs final
Antonio Seañez
 
Cap3 mod2(sol)
Cap3 mod2(sol)Cap3 mod2(sol)
Cap3 mod2(sol)
Ivan Nuñez Salinas
 
Protocolos de enrutamientojavier gonzalez
Protocolos de enrutamientojavier gonzalezProtocolos de enrutamientojavier gonzalez
Protocolos de enrutamientojavier gonzalez
Javiermt_999
 
Ccna2 quiz6
Ccna2 quiz6Ccna2 quiz6
Ccna2 quiz6
jorgeramirezsegura
 
Protocolos de routing estatico
Protocolos de routing estaticoProtocolos de routing estatico
Protocolos de routing estatico
David Narváez
 
Enrutamiento
EnrutamientoEnrutamiento
Enrutamiento
Victor Zapata
 
Protocolos de Enrutamiento
Protocolos de EnrutamientoProtocolos de Enrutamiento
Protocolos de Enrutamiento
Jaime Corrales
 

Similar a dr2-spanish.ppt (20)

B3 eigrp sp
B3 eigrp spB3 eigrp sp
B3 eigrp sp
 
Bgp
BgpBgp
Bgp
 
Exploration routing chapter_2
Exploration routing chapter_2Exploration routing chapter_2
Exploration routing chapter_2
 
Rip e igrp
Rip e igrpRip e igrp
Rip e igrp
 
BGP - Border Gateway Protocol v3.0
BGP - Border Gateway Protocol v3.0BGP - Border Gateway Protocol v3.0
BGP - Border Gateway Protocol v3.0
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2
 
Exploration routing chapter_2
Exploration routing chapter_2Exploration routing chapter_2
Exploration routing chapter_2
 
Eigrp
EigrpEigrp
Eigrp
 
5. fundamentos de bgp
5. fundamentos de bgp5. fundamentos de bgp
5. fundamentos de bgp
 
Configurar eigrp cisco
Configurar eigrp  ciscoConfigurar eigrp  cisco
Configurar eigrp cisco
 
Ccn pm1ch02 v5
Ccn pm1ch02 v5Ccn pm1ch02 v5
Ccn pm1ch02 v5
 
Enrutamiento estatico
Enrutamiento estaticoEnrutamiento estatico
Enrutamiento estatico
 
Ruteo Dinamico
Ruteo DinamicoRuteo Dinamico
Ruteo Dinamico
 
Curso mpls bgp-qo s teoria y labs final
Curso mpls bgp-qo s teoria y labs finalCurso mpls bgp-qo s teoria y labs final
Curso mpls bgp-qo s teoria y labs final
 
Cap3 mod2(sol)
Cap3 mod2(sol)Cap3 mod2(sol)
Cap3 mod2(sol)
 
Protocolos de enrutamientojavier gonzalez
Protocolos de enrutamientojavier gonzalezProtocolos de enrutamientojavier gonzalez
Protocolos de enrutamientojavier gonzalez
 
Ccna2 quiz6
Ccna2 quiz6Ccna2 quiz6
Ccna2 quiz6
 
Protocolos de routing estatico
Protocolos de routing estaticoProtocolos de routing estatico
Protocolos de routing estatico
 
Enrutamiento
EnrutamientoEnrutamiento
Enrutamiento
 
Protocolos de Enrutamiento
Protocolos de EnrutamientoProtocolos de Enrutamiento
Protocolos de Enrutamiento
 

Último

SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtualSESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
JuanGavidia2
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
karenperalta62
 
Operaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica MaizOperaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica Maiz
carolina838317
 
Periodo de secado para velocidad decreciente.pdf
Periodo de secado para velocidad decreciente.pdfPeriodo de secado para velocidad decreciente.pdf
Periodo de secado para velocidad decreciente.pdf
PAULINACASTRUITAGARC
 
Presentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptxPresentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptx
ronnyrocha223
 
Calculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajosCalculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajos
JuanCarlos695207
 
Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...
Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...
Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...
andressalas92
 
chancadoras.............................
chancadoras.............................chancadoras.............................
chancadoras.............................
ssuser8827cb1
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
yamilbailonw
 
ECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdf
ECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdfECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdf
ECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdf
ArnulfoPerezPerez2
 
S9.1_DIN_Cinemática del cuerpo rígido vf.pdf
S9.1_DIN_Cinemática del cuerpo rígido vf.pdfS9.1_DIN_Cinemática del cuerpo rígido vf.pdf
S9.1_DIN_Cinemática del cuerpo rígido vf.pdf
CHRISTIANMILTHONRUSM
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
jemifermelgarejoaran1
 
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdfEstilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
ElisaLen4
 
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptxPRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
ANGELJOELSILVAPINZN
 
Infografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - ConstrucciónInfografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - Construcción
MaraManuelaUrribarri
 
Informe Municipal provincial de la ciudad de Tacna
Informe Municipal provincial de la ciudad de TacnaInforme Municipal provincial de la ciudad de Tacna
Informe Municipal provincial de la ciudad de Tacna
BrusCiriloPintoApaza
 
Estructura de un buque, tema de estudios generales de navegación
Estructura de un buque, tema de estudios generales de navegaciónEstructura de un buque, tema de estudios generales de navegación
Estructura de un buque, tema de estudios generales de navegación
AlvaroEduardoConsola1
 
DIAGRAMA DE FLUJO DE ALGORITMO......
DIAGRAMA DE FLUJO   DE   ALGORITMO......DIAGRAMA DE FLUJO   DE   ALGORITMO......
DIAGRAMA DE FLUJO DE ALGORITMO......
taniarivera1015tvr
 
Tanques de almacenamiento PDF MEDICION CRUDO.pdf
Tanques de almacenamiento PDF MEDICION CRUDO.pdfTanques de almacenamiento PDF MEDICION CRUDO.pdf
Tanques de almacenamiento PDF MEDICION CRUDO.pdf
VivianaJaramillo20
 
Sistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisiónSistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisión
MichaelLpezOrtiz
 

Último (20)

SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtualSESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
SESIÓN 3 ÓXIDOS-HIDRÓXIDOS trabajo virtual
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
 
Operaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica MaizOperaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica Maiz
 
Periodo de secado para velocidad decreciente.pdf
Periodo de secado para velocidad decreciente.pdfPeriodo de secado para velocidad decreciente.pdf
Periodo de secado para velocidad decreciente.pdf
 
Presentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptxPresentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptx
 
Calculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajosCalculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajos
 
Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...
Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...
Libro Epanet, guía explicativa de los pasos a seguir para analizar redes hidr...
 
chancadoras.............................
chancadoras.............................chancadoras.............................
chancadoras.............................
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
 
ECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdf
ECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdfECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdf
ECUACIONES DIFERENCIALES DE PRIMER ORDEN.pdf
 
S9.1_DIN_Cinemática del cuerpo rígido vf.pdf
S9.1_DIN_Cinemática del cuerpo rígido vf.pdfS9.1_DIN_Cinemática del cuerpo rígido vf.pdf
S9.1_DIN_Cinemática del cuerpo rígido vf.pdf
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
 
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdfEstilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
 
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptxPRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
 
Infografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - ConstrucciónInfografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - Construcción
 
Informe Municipal provincial de la ciudad de Tacna
Informe Municipal provincial de la ciudad de TacnaInforme Municipal provincial de la ciudad de Tacna
Informe Municipal provincial de la ciudad de Tacna
 
Estructura de un buque, tema de estudios generales de navegación
Estructura de un buque, tema de estudios generales de navegaciónEstructura de un buque, tema de estudios generales de navegación
Estructura de un buque, tema de estudios generales de navegación
 
DIAGRAMA DE FLUJO DE ALGORITMO......
DIAGRAMA DE FLUJO   DE   ALGORITMO......DIAGRAMA DE FLUJO   DE   ALGORITMO......
DIAGRAMA DE FLUJO DE ALGORITMO......
 
Tanques de almacenamiento PDF MEDICION CRUDO.pdf
Tanques de almacenamiento PDF MEDICION CRUDO.pdfTanques de almacenamiento PDF MEDICION CRUDO.pdf
Tanques de almacenamiento PDF MEDICION CRUDO.pdf
 
Sistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisiónSistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisión
 

dr2-spanish.ppt

  • 1. Implementando BGP Taller WALC 2002 Mayo 6 – 10 Santo Domingo, República Dominicana
  • 2. Programa  Uso de atributos de BGP  Implementando IBGP  Implementando EBGP  Enfasis en Estabilidad, Escalabilidad y Ejemplos de Configuraciones
  • 3. 3 Repaso de BGP Por qué utilizarlo?
  • 4. Resultado Deseado?  Implementación de políticas de enrutamiento que sean:  Escalable  Estable  Simple (o eso esperamos!)
  • 5. Más Detalles...  Necesitas escalar su IGP  Eres un cliente con dos conexiones a ISPs  Necesitas transitar todas las rutas en Internet  Necesitas implementar una politica de enrutamiento, o expandir las políticas de QoS
  • 6. Retiros Atributos (NLRI - Network-Layer Reachability Information) Prefijos Actualizaciones de BGP
  • 7. Atributos de BGP Utilizados para Definir la Política de Enrutamiento 1: ORIGIN 2: AS-PATH 3: NEXT-HOP 4: MED 5: LOCAL_PREF 6: ATOMIC_AGGREGATE  7: AGGREGATOR  8: COMMUNITY  9: ORIGINATOR_ID  10: CLUSTER_LIST  14: MP_REACH_NLRI  15: MP_UNREACH_NLRI
  • 8. BGP Externo (eBGP) AS 109 AS 110 131.108.0.0 A B 150.10.0.0 131.108.10.0 .1 .2  Router B router bgp 110 neighbor 131.108.10.1 remote-as 109  Router A router bgp 109 neighbor 131.108.10.2 remote-as 110 •Entre router en AS diferentes •Usualmente con conexióm directa •Con next-hop apuntando a si mismo
  • 9. A B BGP Interno  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 • Vecinos en el mismo AS • No se modifica el Next-hop • No necesariamente con conexión directa • No anuncia otras rutas aprendidas por iBGP
  • 10. Modificando los defaults: Solo para EBGP NLRI: neighbor x.x.x.x next-hop-self Modificando con route-map: set ip next-hop { A.B.C.D | peeraddress} AS 300 AS 200 150.10.0.0/16 E F 192.0.0.0/24 AS 201 AS 301 A C D B 150.1.1.1 150.10.1.1 150.10.1.2 EBGP—next-hop set to self 3rd Party EBGP Atributos de BGP: NEXT_HOP 150.1.1.2 150.1.1.3 IBGP next-hop unmodified 150.10.0.0/16 150.10.1.1 192.0.0.0/24 150.10.1.1 192.0.0.0/24 150.1.1.3
  • 11. 1880 193.0.34/24 1882 193.0.35/24 1881 193.0.33/24 A: 193.0.33/24 1880 1881 B: 193.0.34/24 1880 C: 193.0.32/24 1880 1883 E: 193.0.32/22 1880 {1881, 1882,1883} 1883 193.0.32/24 A B D E Problema: Detección de Loop, Políticas Solución: AS-PATH  Secuencia de ASs Lista de AS por los que la ruta ha pasado  Conjunto de AS (AS Set) Sumariza la secuencia de ASs El order de la secuencia se pierde  Prefijo con route-map: set as-path C
  • 12. 1755 690 200 1880 1883 209 Problema: Indicar mejor camino a Solución: MED  Informa sobre la preferencia de punto de entrada  Se compara si los caminos son del mismo AS A no ser que se us “bgp always-compare-med”  Es un atributo no-transitivo  route-map: set metric set metric-type internal
  • 13. 1755 1880 690 660 Problema: Sobrepasando As- path/MED? Solución: LOCAL PREFERENCE  Atributo es local al AS — mandatorio para las actualizaciones de iBGP  route-map: set local-preference 680
  • 14. Problema: Sobrepasando Local Preference Solución: WEIGHT  Local al router en que es configurado  route-map: set weight  El mayor peso (weight) gana sobre todos los caminos válidos 1755 1880 666 690 660
  • 15. CORE Cliente A Todas las rutas Cliente B Rutas de Clientes Peer A Communities: 1:100—customer routes 1:80—peer routes Match Community 1:100 Set Community 1:80 Match Community 1:100 1:80 Match Community 1:100 Set Community 1:100 Problema: Escalando Políticas de Enrutamiento Solución: COMMUNITY
  • 16. Atributo de BGP: COMMUNITY  Agrupa los destinos para ayudar a escalar la aplicación de políticas  Comunidades Típicas:  Destinos aprendidos de los clientes  Destinos aprendidos de los peers  Destinos en la VPN  Destinos que reciben tratamiento preferencial en la cola
  • 17. Atributos de BGP: COMMUNITY  Activación por neighbor/peer-group:  neighbor {peer-address | peer-group- name} send-community  Transferidos a través de ASs  Formato común es una cadena de 4 bytes: <AS>:[0-65536]
  • 18. Atributos de BGP: COMMUNITY (Cont.)  Cada destino puede ser miembro de varias comunidades  Route-map: set community <1-4294967295> número de comunidad aa:nn número de comunidad en formato aa:nn additive Añade a una comunidad existente local-AS No enviar a los peers EBGP (well-known community) no-advertise No enviar a ningún peer (well-known community) no-export No exportar fuera del AS/Conf. (well-known community) none No atributo de comunidad
  • 19. Atributo de menor uso: ORIGIN  IGP—creado con comando network en la configuración de BGP  EGP—Redistribuido de EGP  Incomplete—Redistribute IGP en la configuración de BGP  NOTA: siempre usar route-map para modificar: set origin igp
  • 20. Comando set en un route-map  as-path Añade una cadena de AS para el atributo AS-PATH  comm-list set BGP community list (for deletion)  community Atributo de Comunidad  dampening Configura parámetros para dampening  local-preference Atributo de preferencia local de BGP  metric Valor Metric para el protocolo de enrutamiento  origin Codigo de origen BGP  weight Peso BGP para la tabla de enrutamiento  ip next-hop { A.B.C.D | peer-address }
  • 21. 75k1#sh ip bgp 10.0.0.0 BGP routing table entry for 10.0.0.0/24, version 139267814 Paths: (1 available, best #1) Not advertised to any peer 65000 64000 {100 200}, (aggregated by 64000 16.0.0.2) 10.0.10.4 (metric 10) from 10.0.0.1 (10.0.0.2) Origin IGP, metric 100, localpref 230, valid, aggregated internal (or external or local), atomic-aggregate, best Community: 64000:3 100:0 200:10 Originator: 10.0.0.1, Cluster list: 16.0.0.4, 16.0.0.14 Atributos de BGP ! AS-PATH as AS ID ! NEXT-HOP IGP METRIC PEER-IP PEER-ID
  • 22. Mayor WEIGHT Mayor LOCAL PREFERENCE ORIGINADA LOCALMENTE (eg network/aggregate) Más Corto AS-PATH Menor ORIGIN (IGP < EGP < incomplete) Menor MED EBGP IBGP Menor IGP METRIC al next-hop Algoritmo Básico Para Decidir Considera solo las rutas sincronizadas sin referencia circular y un next-hop válido, entonces prefiere:
  • 23. Sincronización 1880 209 690 B A • Asegurarse de que los next-hops del iBGP pueden ser vistos via IGP, entonces: router bgp 1880 no synchronization • Router A no anunciará los prefijos de AS209 hasta que haya convergencia en el IGP.
  • 24. router bgp 100 no synchronization no auto-summary distance 200 200 200 Consideraciones Generales  Sincronización: no requerida si se tiene una maya iBGP completa  => No dejar que BGP tenga prioridad sobre IGP  auto-summary: no. En su lugar usar comandos de agregación:
  • 25. Hasta Ahora …  Aplicar las políticas en base al AS  Agrupar las rutas usando comunidades  Seleccionar los puntos de entrada y salida para grandes grúpos de políticas usando MEDs y preferencia local Pueden tús políticas escalar?
  • 27. Guías para un iBGP Estable  Establecer la conexión usando direcciones de loopback  neighbor { ip address | peer-group} update-source loopback0  Independiente de fallos de la interfase física  Balanceamiento de la carga es realizado por el IGP
  • 28. Guía Para Escalar iBGP  Usar peer-group y route-reflector  Solo llevar next-hop en el IGP  Solo llevar todas las rutas en BGP si es necesario  No redistribuir BGP en el IGP
  • 29. Usando Peer-Groups iBGP Peer Group Peer Group con todas las rutas Peer Group “Default” Peer Group Rutas de Clientes eBGP
  • 30. Qué es un peer-group?  Todos los miembros del peer-group tienen una política de salida común  Actualizaciones generadas solo una vez para el peer-group  Simplifica la configuración  Miembros pueden tener diferentes políticas de entrada
  • 31. n=1000 => casi medio millón de sesiones iBGP! Por qué usar Route- Reflectors? Para evitar una maya con N(n-1)/2 sesiones 13 Routers => 78 Sesiones iBGP!
  • 32. Usando Route-Reflectors Regla para evtar un circulo de RR: Topología de RR debe reflejar la topología física Backbone RR RR RRC Grupo A RR RR RRC Grupo B RRC Grupo D RR RRC Grupo C RR
  • 33. Qué es un Route-Reflector?  El Reflector recibe información de clientes y no clientes  Si el mejor camino es de un cliente, reflejarlo a clientes y no clientes  Si el mejor camino es de no-cliente, reflejarlo a los clientes
  • 34. Desplegando Route-Reflectors  Divida el backbone en varios grupos  Cada grupo contiene al menos 1 RR (multiples para redundancia), y multiples clientes  Los RRs crean una maya completa de iBGP  Utilizar solo un IGP—next-hop que no es modificado por el RR
  • 35. Route-Reflector Jerárquico  Ejemplo: RouterB>sh ip bgp 198.10.0.0 BGP routing table entry for 198.10.10.0/24 3 141.153.14.2 from 141.153.30.1 (140.10.1.1) Origin IGP, metric 0, localpref 100, valid, internal, best C RR D A RRC Router id 141.153.17.1 Router id 140.10.1.1 141.153.30.1 141.153.14.2 Router id 141.153.17.2 198.10.0.0 AS3 B RRC RR Originator: 141.153.17.2 Cluster list: 144.10.1.1, 141.153.17.1
  • 36. Atributos de BGP: ORIGINATOR_ID  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
  • 37. 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
  • 38. Hasta Ahora…  Es la conexión iBGP Estable?  Use loopbacks para la conexión  Escalará?  Use peer-groups  Use route-reflectors  Simple, configuración jerárquica?
  • 39. 39 Desplegando eBGP Consideraciones de Clientes Consideraciones de ISPs
  • 40. 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
  • 41. AS 200 AS100 10.0.0.0 A B 10.60.0.0 10.200.0.0 .1 .2 Conectandose a un ISP Router B: router bgp 109 aggregate-address 10.60.0.0 255.255.0.0 summary-only neighbor 10.200.0.1 remote-as 200 neighbor 10.200.0.1 route-map ispout out neighbor 10.200.0.1 route-map ispin in • AS 100 es un cliente de AS 200 • Usualmente con conexión directa
  • 42. Que es agregación?  Sumarización basada en rutas específicas la tabla de enrutamiento BGP  10.1.1.0 255.255.255.0  10.2.0.0 255.255.0.0  => 10.0.0.0 255.0.0.0
  • 43. Cómo Agregar?  aggregate-address 10.0.0.0 255.0.0.0 {as- set} {summary-only} {route-map}  Use as-set para incluir la información de camino y comunidad basado en las rutas específicas  summary-only suprime las rutas específicas  route-map para configurar otros atributos
  • 44. Por qué Agregar?  Reducir el número de prefijos a anunciar  Incrementar estabilidad — rutas agregadas se mantienen aún si las específicas son inestables  Generación de rutas agragadas estables:  router bgp 100  aggregate-address 10.0.0.0 255.0.0.0 as-set summary-only  network 10.1.0.0 255.255.0.0  :  ip route 10.1.0.0 255.255.0.0 null0
  • 45. Atributos de BGP: Atomic Aggregate  Indica perdida de información de AS-PATH  No debe ser removido una vez configurado  Configuración: aggregate-address x.x.x.x  No configurado si la clave as-set es utilizada, AS-SET y COMMUNITY contienen la información sobre las rutas específicas
  • 46. Atributos de BGP: Aggregator  Número de AS e IP del enrutador generando el agregado  De uso para resolver problemas
  • 47. Atributos de Agregación  NEXT_HOP = local (0.0.0.0)  WEIGHT = 32768  LOCAL_PREF = ninguna (asume 100)  AS_PATH = AS_SET o nada  ORIGIN = IGP  MED = ninguna
  • 48. Por qué una Política de Entrada?  Aplicar una comunidad reconocible para usar en los filtros de salida u otras políticas  Configurar local-preference para modificar el default de 100  Balanceo de las cargas en ambientes de conexión dual—ver mas adelante  route-map ISPin permit 10  set local-preference 200  set community 100:2
  • 49. Por qué una política de Salida?  El filtrado de prefijos de salida ayuda a protegernos contra errores (también podemos aplicar filtros de comunidades y as-path)  Enviar comunidades basado en acuerdos con el ISP  route-map ISPout permit 10  match ip address prefix-list outgoing  set community 100:1 additive
  • 50. 100 200 A Loopback 0 10.200.0.2 Balanceo de Cargas —Un ISP Router A: interface loopback 0 ip address 10.60.0.1 255.255.255.255 ! router bgp 100 neighbor 10.200.0.2 remote-as 200 neighbor 10.200.0.2 update-source loopback0 neighbor 10.200.0.2 ebgp-multi-hop 2
  • 51. 100 200 A 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
  • 52. Qué es Multihoming?  Conectarse a dos o más ISPs para incrementar:  Confiabilidad—si un ISP falla, todavía funciona  Desempeño—mejores caminos a destinos comunes en Internet
  • 53. Tipos de Multihoming  Tres casos comunes:  Ruta Default de todos los proveedores  Rutas de Clientes+default de todos  Rutas completas de todos
  • 54. Default de Todos los Proveedores  Solución bajos requerimientos de memoria/CPU  Proveedor default de BGP => proveedor decide basado en la métrica de IGP cual es el default  Tu envias todas tus rutas al proveedor => camino de entrada decidido por el Internet  Tu puedes influenciar agregando tu AS varias  veces (AS-path prepend)
  • 55. Default de Todos los Proveedores AS 400 AS 200 AS 100 160.10.0.0/16 AS 300 E B C A D 0.0.0.0 0.0.0.0 C Selecciona el IGP con la métrica más baja para Default
  • 56. Clientes+Default de Todos los Proveedores  Uso mediano de memoria y CPU  “Mejor” camino—usualmente el camino AS (AS PATH) más corto  Uso de local-preference para modificar basado en prefijo, as-path, o comunidad  Métrica de IGP al default usado para todos los destinos
  • 57. Rutas de Clientes de Todos los Proveedores AS 400 Proveedor AS 200 Cliente AS 100 160.10.0.0/16 Proveedor AS 300 E B A D C Selecciona el camino AS más corto C
  • 58. Proveedor AS 300 AS 400 Proveedor AS 200 D ip prefix-list AS100 permit 16.10.0.0/16 route-map AS300in permit 10 match ip address prefix-list AS100 set local-preference 800 Rutas de Clientes de Todos los Proveedores 800 Cliente AS 100 160.10.0.0/16 B A AS 400 E C Selecciona la mayor Local-Preference C
  • 59. Rutas Completas de Ambos Proveedores  Solución de mayores requerimientos de memoria/CPU  Alcanza todos destinos basado en el “mejor” camino—usualmente el que tiene el camino mas corto  Todavía puede ajustar manualmente usando local-pref y comparación de as- path/comunidad/prefijo
  • 60. AS 400 AS 200 AS 100 AS 300 B C A E D AS 500 C Selecciona el camino más corto Rutas Completas de Ambos Proveedores
  • 61. Controlando la Entrada de Tráfico?  La entrada es muy dificil de controlar debido a la falta de una métrica transitiva  Puedes dividir los anuncios de prefijos entre los proveedores, pero entonces, que pasa con la redundancia?
  • 62. Controlando la Entrada de Tráfico? (Cont.)  Buen Ciudadano :  Divide el espacio de direcciones  Usa “advertise maps” • Mal Ciudadano Internet: •Divide el espacio de direcciones •Usa “as-path prepend”
  • 63. Usando “AS-PATH prepend” AS 400 10.1.0.0 Proveedor AS 200 Cliente AS 100 Proveedor AS 300 E B C A D ip prefix-list AS100 permit 10.1.0.0/16 route-map AS300out permit 10 match ip address prefix-list AS100 set as-path prepend 400 10.1.0.0/16 300 400 400 10.1.0.0/16 200 400 (Mejor)
  • 64. ISP1 ISP2 R1 R2 R3 1.10.6/24 10.15.7/24 1.10.6.1 10.15.7.4 1.10.6/24 10.15.7/24 10.15.7/24 auto-inject 10.15/16 access-list 1 permit 10.15.7.0 !Anuncia cuando... access-list 2 permit 10.15.0.0 !… este desaparece neighbor <R1> advertise-map am non-exist-map bb route-map am permit 10 match ip address 1 route-map bb permit match ip address 2 Usando un “Advertise-Map” R4 1.10/16
  • 65. Hasta Ahora…  Estabilidad por Medio de:  Agregación  Multihoming  Filtrado de Entreda/Salida  Escalabilidad de memoria/CPU:  Default, rutas de clientes, todas las rutas  Simplicidada usando soluciones “estandares”
  • 66. Consideraciones de ISPs  Escalar la agragación de clientes en BGP  Ofrecer una selección del número de rutas a anunciar  Intercambio con otros proveedores  Minimizar la actividad de BGP y protegerse contra los problemas de configuración de los clientes  Proveer un servicio alternativo  Propagar una política de Calidad de Servicio
  • 67. Guías para el Agregado de Clientes  Definir por los menos tres “peer-groups”:  cliente-default — envía solo default  cliente-cliente — envía solo las rutas de clientes  Cliente-completo — envía todas las rutas  Identificar las rutas a traves de comunidades  2:100=clientes; 2:80=peers  Aplicar claves y un “prefix-list” para cada vecino BGP
  • 68. Agregado de Clientes CORE Route Reflector Cliente Peer Group Router de Agregación (Cliente RR) NOTA: Aplicar claves y “prefix-list” de entrada para cada Cliente Rutas de Clientes Peer Group “Default” Peer Group Rutas Completas Peer Group
  • 69. Cliente-completo peer-group neighbor cliente-completo peer-group neighbor cliente-completo description Envía todas las rutas neighbor cliente-completo remove-private-AS neighbor cliente-completo version 4 neighbor cliente-completo route-map cliente-entrada in neighbor cliente-completo prefix-list cidr-block out neighbor cliente-completo route-map rutas-completas out . ip prefix-list cidr-block seq 5 deny 10.0.0.0/8 ge 9 ip prefix-list cidr-block seq 10 permit 0.0.0.0/0 le 32
  • 70. route-map de salida para cliente-completo ip community-list 1 permit 2:100 ip community-list 80 permit 2:80 . route-map rutas-completas permit 10 match community 1 80 ; clientes & peers set metric-type internal ; MED = métrica IGP set ip next-hop peer-address ; la nuestra
  • 71. route-map cliente-entrada route-map cliente-entrada permit 10 set metric 4294967294 ; ignora MED set ip next-hop peer-address set community 2:100 additive
  • 72. cliente-cliente peer-group neighbor cliente-cliente peer-group neighbor cliente-cliente description Rutas de Clientes neighbor cliente-cliente remove-private-AS neighbor cliente-cliente version 4 neighbor cliente-cliente route-map cliente-entrada in neighbor cliente-cliente prefix-list cidr-block out neighbor cliente-cliente route-map rutas-clientes out
  • 73. route-map rutas-clientes route-map rutas-clientes permit 10 match community 1 ; solo clientes set metric-type internal ; MED = métrica igp set ip next-hop peer-address ; la nuestra
  • 74. route-map ruta-default neighbor cliente-default peer-group neighbor cliente-default description Envía Default neighbor cliente-default default-originate route-map ruta-default neighbor cliente-default remove-private-AS neighbor cliente-default version 4 neighbor cliente-default route-map cliente-entrada neighbor cliente-default prefix-list niega-todo out ip prefix-list niega-todo seq 5 deny 0.0.0.0/0 le 32
  • 75. route-map ruta-default route-map ruta-default permit 10 set metric-type internal ; MED = métrica igp set ip next-hop peer-address ; la nuestra
  • 76. Peer Groups para Puntos de Intercambio  Similar al EBGP para agregado de clientes excepto que no se usa el filtrado de prefijos (porque no hay un registro)  En su lugar se usa maximum-prefix y chequeos de sanidad de prefijos  Continua usando claves para cada vecino!
  • 77. Peer Groups para Puntos de Intercambio (Cont.) neighbor nap peer-group neighbor nap descripción de ISP neighbor nap remove-private-AS neighbor nap version 4 neighbor nap prefix-list chequeo sanidad in neighbor nap prefix-list cidr-block out neighbor nap route-map nap-salidas out neighbor nap maximum prefix 30000
  • 78. Peer Groups para Puntos de Intercambio (Cont.) route-map nap-salida permit 10 match community 1 ; solo clientes set metric-type internal ; MED = métrica IGP set ip next-hop peer-address ; la nuestra
  • 79. Peer Groups para Puntos de Intercambio : Prefix-List chequeo-sanidad # Primero filtramos nuestro espacio de direcciones!! ip prefix-list chequeo-sanidad seq 5 deny 0.0.0.0/32 # no aceptamos default ip prefix-list chequeo-sanidad seq 10 deny 0.0.0.0/8 le 32 # no aceptamos nada que comience con 0 ip prefix-list chequeo-sanidad seq 15 deny 0.0.0.0/1 le 32 # no aceptamos mascaras > 20 para todas las redes clase A (1-127) ip prefix-list chequeo-sanidad seq 15 deny 0.0.0.0/8 ge 20 # no aceptamos 10/8 per RFC1918 ip prefix-list chequeo-sanidad seq 20 deny 10.0.0.0/8 le 32 # reservado por IANA – dirección de loopback ip prefix-list chequeo-sanidad seq 25 deny 127.0.0.0/8 le 32 # no acepta mascaras >= 17 para todas las redes clase B (129-191) ip prefix-list chequeo-sanidad seq 30 deny 128.0.0.0/2 ge 17 # no acepta la red 128.0 – reservado por IANA ip prefix-list chequeo-sanidad seq 35 deny 128.0.0.0/16 le 32
  • 80. Peer Groups for NAPs: Prefix-List chequeo-sanidad # no acepta 172.16 por RFC1918 ip prefix-list chequeo-sanidad seq 40 deny 172.16.0.0/12 le 32 # no acepta clase C 192.0.20.0 reservado por IANA ip prefix-list chequeo-sanidad seq 45 deny 192.0.2.0/24 le 32 # no acepta clase C 192.0.0.0 reservado por IANA ip prefix-list chequeo-sanidad seq 50 deny 192.0.0.0/24 le 32 # no acepta 192.168/16 por RFC1918 ip prefix-list chequeo-sanidad seq 55 deny 192.168.0.0/16 le 32 # no acepta 191.255.0.0 – reservado por IANA (Creo ??) ip prefix-list chequeo-sanidad seq 60 deny 191.255.0.0/16 le 32 # no acepta mascaras > 25 para clase C (192-222) ip prefix-list chequeo-sanidad seq 65 deny 192.0.0.0/3 ge 25 # no acepta nada en red 223 – reservado por IANA ip prefix-list chequeo-sanidad seq 70 deny 223.255.255.0/24 le 32 # no acepta clase D/Experimental ip prefix-list chequeo-sanidad seq 75 deny 224.0.0.0/3 le 32
  • 81. Resumen  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
  • 82. 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)
  • 83. Referencias:  John Stewart, BGP4, Addison Wesley  Sam Halabi, “Internet Routing Architectures”, Cisco Press  RFCs
  • 84. ip prefix-list anuncia-mi-prefijo seq 10 permit <numero_red>/<mascara> ge 23 ip prefix-list anuncia-mi-prefijo seq 100 deny 0.0.0.0/32 le 32 ip prefix-list acepta-default seq 10 permit 0.0.0.0/0 ge 32 ip prefix-list acepta-default seq 100 deny 0.0.0.0/0 le 31 access-list 10 permit <numreo_red> <mascara_wildcard> access-list 10 deny any access-list 20 permit 0.0.0.0 0.0.0.0 access-list 20 deny any Ejemplos de filtros para clientes