teoría y configuración de bgp - bienvenidos al portal ... · introducción bgp es un protocolo de...

93
Teoría y Configuración de BGP LACNIC XII

Upload: doanquynh

Post on 21-Apr-2018

239 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Teoría y Configuración deBGP

LACNIC XII

Page 2: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Programa

Introducción y Repaso Uso de atributos de BGP Implementando iBGP Implementando eBGP Enfasis en Estabilidad, Escalabilidad y

Ejemplos de Configuraciones

Page 3: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

3

Repaso de BGP

Por qué utilizarlo?

Page 4: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Introducción

BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN)

para identificación Lleva información de los AS por los que un prefijo

a pasado Utiliza TCP en el puerto 179 Requiere conexiones explicitas entre dos

enrutadores

Page 5: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Máquina de Estado Finíto de BGP

Page 6: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Que es un Sistema Autónomo?

Necesarios para controlar la expansión de lastablas de enrutamiento

Proveen vista mas estructurada del Internet Segregan dominios de enrutamiento en grupos

administrativos bien definidos con su propiaspolíticas de enrutamiento e IGPs

Representado por números de SistemaAutónomo 16-bits (actualmente, utilización de 73%) Expandido a 32-bits (RFC4893)

Page 7: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Sistemas Autónomos

Page 8: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Distancia Administrativa de Protocolos

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

Page 9: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Resultado Deseado?

Implementación de políticas deenrutamiento que sean: Escalable Estable Simple (o eso esperamos!)

Page 10: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Más Detalles...

Necesitas escalar tu IGP Eres un cliente con dos conexiones a ISPs Necesitas transitar todas las rutas en

Internet Necesitas implementar una política de

enrutamiento, o expandir las políticas de QoS

Page 11: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

RetirosRetiros

AtributosAtributos

(NLRI - Network-LayerReachability Information)

(NLRI - Network-LayerReachability Information)

PrefijosPrefijos

Actualizaciones de BGP

Page 12: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Atributos de BGP Utilizados para Definir laPolítica de Enrutamiento

1: ORIGIN2: AS-PATH3: NEXT-HOP4: MED5: LOCAL_PREF6: ATOMIC_AGGREGATE

1: ORIGIN2: AS-PATH3: NEXT-HOP4: MED5: LOCAL_PREF6: ATOMIC_AGGREGATE

7: AGGREGATOR 8: COMMUNITY 9: ORIGINATOR_ID 10: CLUSTER_LIST 14: MP_REACH_NLRI 15: MP_UNREACH_NLRI

7: AGGREGATOR 8: COMMUNITY 9: ORIGINATOR_ID 10: CLUSTER_LIST 14: MP_REACH_NLRI 15: MP_UNREACH_NLRI

Page 13: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

BGP Externo (eBGP)

AS 109

AS 110

131.108.0.0

A

B

150.10.0.0

131.108.10.0131.108.10.0

.1

.2

Router Brouter bgp 110neighbor 131.108.10.1 remote-as 109

Router Arouter bgp 109neighbor 131.108.10.2 remote-as 110

•Entre router en AS diferentes•Usualmente con conexión directa•Con next-hop apuntando a si mismo

Page 14: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

A B

BGP Interno

Router B:router bgp 109neighbor 131.108.30.2 remote-as 109

Router A:router bgp 109neighbor 131.108.20.1 remote-as 109

Vecinos en el mismo AS No se modifica el Next-hop No necesariamente conconexión directa No anuncia otras rutasaprendidas por iBGP

Page 15: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 300AS 200150.10.0.0/16 EE

FF

192.0.0.0/24AS 201AS 301AA

CC

DDD

BB

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.3IBGP next-hop unmodified

150.10.0.0/16 150.10.1.1192.0.0.0/24 150.10.1.1

192.0.0.0/24 150.1.1.3

Page 16: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

1880193.0.34/24

1882193.0.35/24

1881193.0.33/24

A: 193.0.33/24 1880 1881B: 193.0.34/24 1880C: 193.0.32/24 1880 1883E: 193.0.32/22 1880 {1881, 1882,1883}

A: 193.0.33/24 1880 1881B: 193.0.34/24 1880C: 193.0.32/24 1880 1883E: 193.0.32/22 1880 {1881, 1882,1883}

1883193.0.32/24

AA

BB

D

EEE

Problema: Detección de Loop, PolíticasSolución: AS-PATH

Secuencia de ASsLista de AS por los que la rutaha pasado

Conjunto de AS (AS Set)Sumariza la secuencia de ASs

El order de la secuencia sepierde

Prefijo con route-map:set as-path CC

Page 17: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

1755

690

200

1880

1883

209

Problema: Indicar mejor camino a ASSolución: MED

Informa sobre la preferencia de punto de entrada Se compara si los caminos son del mismo AS

A no ser que se use “bgp always-compare-med”

Es un atributo no-transitivo route-map: set metric set metric-type internal

Page 18: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

1755 1880690

660

Problema: Sobrepasando As-path/MED?Solución: LOCAL PREFERENCE

Atributo es local al AS — mandatorio para lasactualizaciones de iBGP

route-map: set local-preference

680

Page 19: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Problema: Sobrepasando Local PreferenceSolución: WEIGHT (Cisco)

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

Page 20: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

CORE

Cliente ATodas las rutas

Cliente BRutas de Clientes

Peer A

Communities:

1:100—customer routes

1:80—peer routes

Communities:

1:100—customer routes

1:80—peer routes

Match Community1:100

Set Community1:80

Match Community1:100 1:80 Match Community

1:100

Set Community1:100

Problema: Escalando Políticas de EnrutamientoSolución: COMMUNITY

Page 21: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Atributo de BGP: COMMUNITY

Agrupa los destinos para ayudar a escalarla 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

Page 22: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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]

Page 23: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Atributos de BGP: COMMUNITY

Cada destino puede ser miembro de variascomunidades

Route-map: set community<1-4294967295> número de comunidadaa:nn número de comunidad en formato aa:nnadditive Añade a una comunidad existentelocal-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

Page 24: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Atributo de menor uso: ORIGIN

IGP—creado con comando network en laconfiguració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

Page 25: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 }

Page 26: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Atributos de BGP

router1#sh ip bgp 10.0.0.0BGP routing table entry for 10.0.0.0/24, version 139267814Paths: (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

! AS-PATH AS ID

! NEXT-HOP IGP METRIC PEER-IP PEER-ID

Page 27: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Proceso de Enrutamiento

Page 28: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Algoritmo Básico Para Decidir

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

Only consider synchronized routes without AS loops and a validnext-hop, and then prefer:

Page 29: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Sincronización

1880

209

690

B

A

• Asegurarse de que los next-hops del iBGP pueden ser vistos via IGP, entonces:

router bgp 1880no synchronization

• Router A no anunciará los prefijos de AS209 hasta que haya convergencia en el IGP.

Page 30: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

router bgp 100no synchronizationno auto-summarydistance 200 200 200

Consideraciones Generales

Sincronización: no requerida si se tiene unamaya iBGP completa

=> No dejar que BGP tenga prioridad sobre IGP auto-summary: no. En su lugar usar comandos

de agregación:

Page 31: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 ypreferencia local

Pueden tús políticas escalar?

Page 32: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

32

Implementando iBGP

Route Reflectors, Peer Groups

Page 33: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 34: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Guías 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

Page 35: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Usando Peer-Groups

iBGP Peer Group

Peer Groupcon todaslas rutas

Peer Group“Default”

Peer GroupRutas deClientes

eBGP

Page 36: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Qué es un peer-group?

Todos los miembros del peer-grouptienen una política de salida común

Actualizaciones generadas solo una vezpara el peer-group

Simplifica la configuración Miembros pueden tener diferentes

políticas de entrada

Page 37: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

n=1000 => casimedio millón desesiones iBGP!

Por qué usar Route-Reflectors?

Para evitar una maya conN(n-1)/2 sesiones

13 Routers =>78 Sesiones

iBGP!

Page 38: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Usando Route-Reflectors

Regla para evitar uncirculo de RR:Topología de RRdebe reflejar latopología física

Backbone BackboneRRRRRRRR

RRCRRC

Grupo AGrupo A

RRRR

RR

RRC

Grupo B

RRC

Grupo DGrupo DRRRR

RRC

Grupo CGrupo CRRRR

Page 39: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Qué es un Route-Reflector?

El Reflector recibe información de clientes yno clientes

Si el mejor camino es de un cliente, reflejarloa clientes y no clientes

Si el mejor camino es de no-cliente, reflejarloa los clientes

Page 40: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 41: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Originator: 141.153.17.2Cluster list: 144.10.1.1, 141.153.17.1

C

RR

D

ARRC Router id

141.153.17.1

Router id140.10.1.1

141.153.30.1

141.153.14.2

Router id141.153.17.2

198.10.0.0AS3

BRRC

RR

Page 42: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 porrelaciones circulares

Page 43: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 chequearrelaciones circulares

Page 44: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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?

Page 45: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

45

Desplegando eBGP

Consideraciones de ClientesConsideraciones de ISPs

Page 46: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 47: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 48: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Que es agregación?

Sumarización basada en rutas específicas dela 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

Page 49: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 ycomunidad basado en las rutas específicas

summary-only suprime las rutas específicas route-map para configurar otros atributos

Page 50: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 agregadas estables:

router bgp 100aggregate-address 10.0.0.0 255.0.0.0 as-set summary-onlynetwork 10.1.0.0 255.255.0.0:ip route 10.1.0.0 255.255.0.0 null0

Tener en cuenta que las communidades tambien sonagregadas Por ejemplo, que pasa si uno de los prefijos tiene no-export?

Page 51: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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 sobrelas rutas específicas

Page 52: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Atributos de BGP: Aggregator

Número de AS e IP del enrutadorgenerando el agregado

De uso para resolver problemas

Page 53: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 54: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Por qué una Política de Entrada?

Aplicar una comunidad reconocible para usar en los filtrosde salida u otras políticas

Configurar local-preference para modificar el default de 100

Balanceo de las cargas en ambientes de conexión dual—vermas adelanteroute-map ISPin permit 10

set local-preference 200

set community 100:2

Page 55: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Por qué una política de Salida?

El filtrado de prefijos de salida ayuda aprotegernos contra errores (también podemosaplicar filtros de comunidades y as-path)

Enviar comunidades basado en acuerdos con elISP

route-map ISPout permit 10

match ip address prefix-list salida

set community 100:1 additive

Page 56: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

100200

A Loopback 010.200.0.2

Balanceo de Cargas —Un ISP

Router A:interface loopback 0ip 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

Page 57: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

100

200A

Balanceo de Cargas—Multiples Caminosdesde 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

Page 58: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Qué es Multihoming?

Conectarse a dos o más ISPs paraincrementar: Confiabilidad - si un ISP falla, todavía

funciona Desempeño - mejores caminos a

destinos comunes en Internet

Page 59: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Tipos de Multihoming

Tres casos comunes: Ruta Default de todos los proveedores Rutas de Clientes+default de todos Rutas completas de todos

Page 60: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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)

Page 61: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Default de Todos los Proveedores

C Selecciona el IGPcon la métrica másbaja para Default

AS 400

AS 200

AS 100160.10.0.0/16

AS 300

EE

BB

CC

AA

DD0.0.0.0 0.0.0.0

Page 62: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Clientes+Default de Todos losProveedores

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

Page 63: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Rutas de Clientes de Todos losProveedores

AS 400

ProveedorAS 200

Cliente

AS 100160.10.0.0/16

Proveedor

AS 300EE

BBAA

DD

C Seleccionael camino AS más

cortoCC

Page 64: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

ProveedorAS 300

AS 400

ProveedorAS 200

DD

ip prefix-list AS100 permit 16.10.0.0/16route-map AS300in permit 10match ip address prefix-list AS100set local-preference 800

Rutas de Clientes de Todos losProveedores

800

Cliente

AS 100160.10.0.0/16

BBAA

AS 400

EE

C Selecciona lamayor

Local-PreferenceCC

Page 65: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Rutas Completas de AmbosProveedores

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-

preference y comparación de as-path/comunidad/prefijo

Page 66: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

AS 400

AS 200

AS 100

AS 300

BB

CC

AA

EEDD

AS 500

C Selecciona elcamino más corto

Rutas Completas de AmbosProveedores

Page 67: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Controlando la Entrada de Tráfico?

La entrada es muy difícil de controlardebido a la falta de una métricatransitiva

Puedes dividir los anuncios de prefijosentre los proveedores, pero entonces,que pasa con la redundancia?

Page 68: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Controlando la Entrada de Tráfico?

Buen Ciudadano : Divide el espacio de direcciones Usa “advertise maps”

Mal Ciudadano Internet: Divide el espacio de direcciones Usa “as-path prepend”

Page 69: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Usando “AS-PATH prepend”

AS 40010.1.0.0

ProveedorAS 200

ClienteAS 100

Proveedor

AS 300EE

BB

CC

AA

DD

ip prefix-list AS100 permit 10.1.0.0/16route-map AS300out permit 10 match ip address prefix-list AS100 set as-path prepend 400

10.1.0.0/16 300 400 40010.1.0.0/16 200 400 (Mejor)

Page 70: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Usando un “Advertise-Map”

ISP1ISP2

R1R1

R2R2

R3R3

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 !Announces when ...access-list 2 permit 10.15.0.0 !… this one disappearsneighbor <R1> advertise-map am non-exist-map bbroute-map am permit 10 match ip address 1route-map bb permit match ip address 2

R4R4

1.10/16

Page 71: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Hasta Ahora…

Estabilidad por Medio de: Agregación Multihoming Filtrado de Entreda/Salida

Escalabilidad de memoria/CPU: Default, rutas de clientes, todas las rutas

Simplicidad usando soluciones “estandares”

Page 72: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Consideraciones de ISPs

Escalar la agregació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

Page 73: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 74: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Agregado de Clientes

CORECORE

Route Reflector

Cliente Peer Group

Router de Agregación(Cliente RR)

NOTA: Aplicar claves y “prefix-list” de entrada para cada Cliente

Rutas de ClientesPeer Group

“Default”Peer Group

Rutas CompletasPeer Group

Page 75: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Cliente-completo peer-group

neighbor cliente-completo peer-groupneighbor cliente-completo description Envía todas las rutasneighbor cliente-completo remove-private-ASneighbor cliente-completo version 4neighbor cliente-completo route-map cliente-entrada inneighbor cliente-completo prefix-list cidr-block outneighbor cliente-completo route-map rutas-completas out.ip prefix-list cidr-block seq 5 deny 10.0.0.0/8 ge 9ip prefix-list cidr-block seq 10 permit 0.0.0.0/0 le 32

Page 76: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

route-map de salida paracliente-completo

ip community-list 1 permit 2:100ip 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

Page 77: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 78: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

cliente-cliente peer-group

neighbor cliente-cliente peer-groupneighbor cliente-cliente description Rutas de Clientesneighbor cliente-cliente remove-private-ASneighbor cliente-cliente version 4neighbor cliente-cliente route-map cliente-entrada inneighbor cliente-cliente prefix-list cidr-block outneighbor cliente-cliente route-map rutas-clientes out

Page 79: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 80: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

route-map ruta-default

neighbor cliente-default peer-groupneighbor cliente-default description Envía Defaultneighbor cliente-default default-originate

route-map ruta-defaultneighbor cliente-default remove-private-ASneighbor cliente-default version 4neighbor cliente-default route-map cliente-entrada inneighbor cliente-default prefix-list niega-todo out

ip prefix-list niega-todo seq 5 deny 0.0.0.0/0 le 32

Page 81: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 82: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Peer Groups para Puntos deIntercambio

Similar al EBGP para agregado de clientesexcepto que no se usa el filtrado de prefijos(porque no hay un registro)

En su lugar se usa maximum-prefix ychequeos de sanidad de prefijos

Continua usando claves para cada vecino!

Page 83: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Peer Groups para Puntos deIntercambio

neighbor nap peer-groupneighbor nap descripción de ISPneighbor nap remove-private-ASneighbor nap version 4neighbor nap prefix-list chequeo sanidad inneighbor nap prefix-list cidr-block outneighbor nap route-map nap-salidas outneighbor nap maximum prefix 30000

Page 84: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Peer Groups para Puntos deIntercambio

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

Page 85: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Peer Groups para Puntos de Intercambio:Prefix-List chequeo-sanidad

# Primero filtramos nuestro espacio de direcciones!!# no aceptamos defaultip prefix-list chequeo-sanidad seq 5 deny 0.0.0.0/32# no aceptamos nada que comience con 0ip prefix-list chequeo-sanidad seq 10 deny 0.0.0.0/8 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/1 ge 20# no aceptamos 10/8 per RFC1918ip prefix-list chequeo-sanidad seq 20 deny 10.0.0.0/8 le 32# reservado por IANA – dirección de loopbackip 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 IANAip prefix-list chequeo-sanidad seq 35 deny 128.0.0.0/16 le 32

Page 86: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Peer Groups para Puntos de Intercambio:Prefix-List chequeo-sanidad

# no acepta 172.16 por RFC1918ip prefix-list chequeo-sanidad seq 40 deny 172.16.0.0/12 le 32# no acepta clase C 192.0.20.0 reservado por IANAip prefix-list chequeo-sanidad seq 45 deny 192.0.2.0/24 le 32# no acepta clase C 192.0.0.0 reservado por IANAip prefix-list chequeo-sanidad seq 50 deny 192.0.0.0/24 le 32# no acepta 192.168/16 por RFC1918ip 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 IANAip prefix-list chequeo-sanidad seq 70 deny 223.255.255.0/24 le 32# no acepta clase D/Experimentalip prefix-list chequeo-sanidad seq 75 deny 224.0.0.0/3 le 32

Page 87: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 88: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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)

Page 89: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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

Page 90: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

AS23456

• Como luce:

uonet9-gw#sh ip bgp 91.201.176.0/22BGP routing table entry for 91.201.176.0/22, version 82287Paths: (2 available, best #1, table default) Advertised to update-groups: 4 7 3701 3356 35320 3261 23456, (aggregated by 23456 92.242.127.170) 207.98.64.65 from 207.98.64.65 (207.98.64.251) Origin IGP, localpref 1100, valid, external, atomic-aggregate, best Community: 3582:467 3701:380 3701 3356 35320 3261 23456, (aggregated by 23456 92.242.127.170), (received-only) 207.98.64.65 from 207.98.64.65 (207.98.64.251) Origin IGP, localpref 1000, valid, external, atomic-aggregate Community: 3701:380

Page 91: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

AS23456

Como transito solo la he visto para el prefijo experimental de RIPE NCC

uonet9-gw# sh ip bgp 84.205.80.0/24 BGP routing table entry for 84.205.80.0/24, version 5787485 Paths: (6 available, best #1, table default) Advertised to update-groups: 4 7 4600 11537 20965 1103 1125 23456 12654, (aggregated by 64512 10.255.255.255) 198.32.165.89 from 198.32.165.89 (198.32.165.126) Origin IGP, metric 0, localpref 1500, valid, external, best Community: 3582:567 4600:99 3701 4600 11537 20965 1103 1125 23456 12654, (aggregated by 64512 10.255.255.255) 207.98.64.65 from 207.98.64.65 (207.98.64.251) Origin IGP, localpref 1300, valid, external Community: 3582:469 3701:391 4600 11537 6939 16150 1103 1125 23456 12654, (aggregated by 64512 10.255.255.255) 198.32.165.217 from 198.32.165.217 (198.32.165.254) Origin IGP, metric 0, localpref 1500, valid, external Community: 3582:567 4600:199

Page 92: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

Referencias/Fuentes:

Cisco (www.cisco.com) Dave Meyer ([email protected]) John Stewart, BGP4, Addison Wesley Sam Halabi, “Internet Routing Architectures”, Cisco Press Randy Zhang, “BGP Design and Implementation”, Cisco

Press RFCs

Page 93: Teoría y Configuración de BGP - Bienvenidos al Portal ... · Introducción BGP es un protocolo de Vector de Caminos De-facto EGP Utiliza números de sistemas autónomos (ASN) para

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