Вы находитесь на странице: 1из 17

Grado en Ingeniera Informtica

Arquitectura de Redes

ARQUITECTURA DE REDES
Boletn 6: BGP
Contenidos:
1. Introduccin........................................................................................... 2 2. Configuracin bsica de BGP ............................................................... 2 Habilitar BGP y la propagacin de redes ................................................. 2 Consulta de informacin sobre BGP ........................................................ 4 Limpieza de sesiones BGP ...................................................................... 6 Soft reconfiguration .................................................................................. 6 Sincronizacin BGP ................................................................................. 7 Configuracin de atributos de seleccin de ruta ...................................... 7 Listas de control de acceso ...................................................................... 9 Route maps ............................................................................................ 10 neighbor remove-private ........................................................................ 12 Filtrado y creacin de polticas BGP ...................................................... 13 Listas de filtros ....................................................................................... 13 Listas de distribucin.............................................................................. 13 Listas de prefijos .................................................................................... 14 Monitorizacin ........................................................................................ 15 3. Configuracin avanzada de BGP ........................................................ 16 Ruta por defecto..................................................................................... 16 Cambiar la distancia administrativa por defecto ..................................... 16 Cambiar parmetros que afectan al proceso de convergencia .............. 17 4. Bibliografa .......................................................................................... 17

Antonio Ruiz <arm@um.es>

Francisco J. Ros <fjros@um.es>

Fernando Pereguez <pereniguez@um.es>

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

1. Introduccin
En este guin vamos a aprender cmo configurar y administrar redes que utilizan el protocolo BGP (Border Gateway Protocol) [1] como protocolo de enrutamiento interdominio.

2. Configuracin bsica de BGP


BGP permite el intercambio de informacin entre sistemas autnomos (AS Autonomous System). Cada sistema autnomo va a estar identificado por un nmero de sistema autnomo (ASN Autonomous System Number) que es un nmero de 16 bits comprendido entre 1 y 65535. Cabe destacar que, de este rango nmeros, aquellos que van desde 64512 a 65535 estn reservados para uso privado.

Habilitar BGP y la propagacin de redes


A continuacin mostramos la forma genrica de configurar en BGP:

Router(config)# router bgp asn Router(config-router)# neighbor address remote-as asnv Router(config-router)# neighbor address description text Router(config-router)# network address mask mask Donde: router ospf asn habilita BGP en el router para el sistema autnomo cuyo identificador es asn. neighbor address remote-as asnv define cul es la direccin (address) de nuestro vecino (peer o neighbor) para el sistema autnomo con identificador asnv. neighbor address description text es opcional y se utiliza para proporcionar una descripcin acerca de la conexin. network address mask mask indica la direccin de red (address) junto con su mscara que el router anunciar a los vecinos. Los vecinos de un router pueden pertenecer a otro sistema autnomo o pueden ser del mismo sistema autnomo. Dependiendo de si pertenece al mismo sistema autnomo o no se ejecutar: internal Border Gateway Protocol (iBGP) para los routers que intercambian informacin dentro del mismo sistema autnomo. external Border Gateway Protocol (eBGP) para intercambiar informacin con routers que no son del mismo sistema autnomo.

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

De este modo, para configurar BGP en el router R1 de la Figura 1 utilizaramos la configuracin que se indica a continuacin:

R1(config)# router bgp 100 R1(config-router)# network 1.0.0.0 mask 255.0.0.0 R1(config-router)# neighbor 10.0.0.2 remote-as 300 R1(config-router)# neighbor 10.0.0.2 description Enlace con R5 R1(config-router)# neighbor 10.0.1.2 remote-as 400 R1(config-router)# neighbor 10.0.1.2 description Enlace con R6 R1(config-router)# neighbor 192.168.1.2 remote-as 100 R1(config-router)# neighbor 192.168.1.2 description Enlace con R4 R1(config-router)# neighbor 192.168.2.2 remote-as 100 R1(config-router)# neighbor 192.168.2.2 description Enlace con R3 En el caso de que en un mismo SA hubiese varios routers BGP haciendo de frontera con otros SAs es necesario que todos estos routers frontera estn conectados con todos por medio de iBGP. En esta situacin adems hay que tener en cuenta que en el caso de que el SA slo estuviese constituido por routers BGP que no ejecutan ningn protocolo de enrutamiento interno, sera necesario que utilizsemos el comando next-hop-self. Este comando reemplazara la direccin del siguiente salto para alcanzar un SA por su direccin. De esta forma, un router podra llegar a las rutas de un vecino interno al SA usndolo como siguiente salto, en vez de utilizar la interfaz que comparte el intercambio de informacin enrutamiento con otro vecino externo.

Figura 1. Topologa del escenario BGP.

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

Consulta de informacin sobre BGP


Una vez configurado BGP, para verificar la configuracin y detectar posibles problemas de BGP podemos utilizar distintos comandos. Al igual que se ha explicado en otros guiones, con el comando show ip route podemos ver la informacin aprendida por el router. En la informacin mostrada, las rutas que han sido obtenidas por medio de BGP aparecen marcadas con B, tal y como se puede ver a continuacin.

R1# show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set 1.0.0.0/24 is subnetted, 1 subnets 1.0.0.0 is directly connected, FastEthernet0/1 2.0.0.0/8 [200/0] via 10.0.2.2, 02:51:03 3.0.0.0/8 [20/0] via 10.0.0.2, 02:52:37 4.0.0.0/8 [20/0] via 10.0.1.2, 02:52:27 5.0.0.0/8 [20/0] via 10.0.1.2, 02:52:27 6.0.0.0/8 [200/0] via 10.0.2.2, 02:51:03 7.0.0.0/8 [20/0] via 10.0.1.2, 02:52:27 8.0.0.0/8 [200/0] via 10.0.2.2, 02:51:03 10.0.0.0/24 is subnetted, 3 subnets 10.0.2.0 [110/144] via 192.168.0.2, 02:53:21, Serial1/0 [110/144] via 192.168.1.2, 02:53:23, Serial1/1 10.0.0.0 is directly connected, Serial1/3 10.0.1.0 is directly connected, Serial1/2 192.168.0.0/24 is directly connected, Serial1/0 192.168.1.0/24 is directly connected, Serial1/1 192.168.2.0/24 [110/96] via 192.168.0.2, 02:53:59, Serial1/0 192.168.3.0/24 [110/144] via 192.168.0.2, 02:53:59, Serial1/0 [110/144] via 192.168.1.2, 02:53:59, Serial1/1

C B B B B B B B O C C C C O O

Los principales comandos para consultar el estado de BGP son: show ip bgp. Muestra toda la informacin de configuracin de BGP.

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

show ip bgp neighbors. Muestra todos los vecinos as como informacin estadstica de cada uno de ellos. show ip bgp filter-list. Muestra rutas de acuerdo a listas de filtrado. show ip bgp paths. Muestra toda la informacin de rutas para el router. show ip bgp summary. Muestra un resumen del estado de todos los vecinos BGP.

R1# show ip bgp


BGP table version is 11, local router ID is 1.0.0.4 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete Network * i1.0.0.0 *> * i *>i2.0.0.0 * i * 3.0.0.0 *> * 4.0.0.0 *> * i5.0.0.0 *> * * i6.0.0.0 *>i *> 7.0.0.0 * Network * i8.0.0.0 *>i Next Hop 192.168.2.2 0.0.0.0 192.168.1.2 10.0.2.2 10.0.3.2 10.0.1.2 10.0.0.2 10.0.1.2 10.0.0.2 10.0.4.2 10.0.0.2 10.0.1.2 10.0.3.2 10.0.2.2 10.0.0.2 10.0.1.2 Next Hop 10.0.3.2 10.0.2.2 100 100 100 Metric LocPrf Weight Path 97 100 0 i 0 49 100 100 100 100 32768 i 0 i 0 200 i 0 200 i 0 400 400 400 400 300 i 0 300 i 0 400 400 400 400 i 0 300 400 i 100 0 500 i 0 300 400 500 i 0 400 400 400 400 500 i 0 200 800 600 i 0 200 800 600 i 0 300 400 i 0 400 400 400 400 i Metric LocPrf Weight Path 100 0 200 800 i 100 100 0 200 800 i

0 0 49

Si le pasamos al comando show ip bgp como parmetro una de las redes recibidas, entonces no muestra la informacin detallada para esa ruta.

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

Router# show ip bgp 1.0.0.0 BGP routing table entry for 1.0.0.0/8, version 10 Paths: (3 available, best #2, table Default-IP-Routing-Table) Advertised to non peer-group peers: 10.0.0.2 10.0.1.2 192.168.1.2 192.168.2.2 Local 192.168.2.2 (metric 144) from 192.168.2.2 (1.0.0.2) Origin IGP, metric 97, localpref 100, valid, internal Local 0.0.0.0 from 0.0.0.0 (1.0.0.4) Origin IGP, metric 0, localpref 100, weight 32768, valid, sourced, local, best Local 192.168.1.2 from 192.168.1.2 (1.0.0.3) Origin IGP, metric 49, localpref 100, valid, internal

Limpieza de sesiones BGP


Cuando se hacen cambios en la configuracin BGP de un router, la sesin tiene que ser limpiada para que los nuevos cambios tengan lugar. El comando para realizar esta limpieza es: clear ip bgp ip/asn, donde se indica la direccin IP o el nmero de SA del vecino del que se eliminar la informacin. Si queremos borrar las conexiones con todos los vecinos entonces ejecutaramos el comando clear ip bgp *. La ejecucin provoca la invalidacin de la cach y tiene un importante impacto en las operaciones de red ya que se eliminan las rutas de BGP y de las tablas de enrutamiento y, por tanto, se pierde conectividad durante algn tiempo o la informacin se enva sobre otras rutas alternativas.

Soft reconfiguration
Para evitar que pequeos cambios en la configuracin provoquen un procedimiento de restablecimiento, Cisco ha implementado una opcin de reconfiguracin suave (soft reconfiguration) la cual permite que se puedan realizar cambios sin limpiar la sesin BGP. Cuando este mecanismo se utiliza para generar actualizaciones entrantes de un vecino se le denomina soft reconfiguration inbound. Por el contrario, cuando se utiliza para enviar actualizaciones a un vecino, se le denomina soft reconfiguration outbound. El comando para configurar soft reconfiguration es: neighbor IP softreconfiguration inbound, donde IP es la direccin del router frontera un de SA vecino. Para configurar este mecanismo en el router R1, la forma incluirlo sera la siguiente:

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

R1(config)# router bgp 100 R1(config-router)# network 1.0.0.0 mask 255.255.255.0 R1(config-router)# neighbor 10.0.0.2 soft-reconfiguration inbound

Sincronizacin BGP
Cisco, por defecto, no incluye rutas que han sido aprendidas a travs de iBGP hasta que stas estn presentes en un protocolo de enrutamiento interno. Cuando en un SA todos los routers estn ejecutando slo BGP y no se emplea un protocolo de enrutamiento interno, no hay necesidad de tener la sincronizacin activa. En estos casos, para deshabilitarla tenemos el comando no synchronization. En la mayora de los casos, cuando vamos a configurar BGP se incluir la siguiente informacin:

RA1(config)# router bgp XXX RA1(config-router)# no synchronization RA1(config-router)# network XXX.XXX.XXX.XXX mask yyy.yyy.yyy RA1(config-router)# neighbor xxx.xxx.xxx.x.xx soft-reconfiguration inbound RA1(config-router)# Para el router de la Figura 1, la configuracin para intercambiar informacin con el router R5 del SA 300 sera:

RA1(config)# router bgp 100 RA1(config-router)# no synchronization RA1(config-router)# network 1.0.0.0 mask 255.255.255.0 RA1(config-router)# neighbor 10.0.0.2 soft-reconfiguration inbound RA1(config-router)#

Configuracin de atributos de seleccin de ruta


Para seleccionar la mejor ruta a un destino, BGP utiliza diversas mtricas. Los atributos que se examinan o comprobaciones que se realizan para elegir la ruta se efectan en el siguiente orden: 1. Atributo Weight 2. Atributo Local preference 3. Ruta originada por el router local 4. Atributo AS path 5. Origin code 6. Atributo MED 7. Externas sobre internas 8. Tipos de caminos

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

9. Vecino IGP ms cercano 10. Menor Router ID A continuacin explicaremos cmo establecer aquellos atributos que nosotros podemos modificar durante el proceso de envo/recepcin de rutas a/de nuestros vecinos. El atributo weight es un atributo definido por Cisco y, por lo tanto, es propietario. Weight se considera una mtrica y se utiliza en un router (es local al router en el que se configura) para indicar la preferencia de las rutas aprendidas por otros vecinos BGP. Cuanto mayor es el valor, mejor es el camino. El valor puede ir entre 0 y 65535. Por defecto, las rutas aprendidas de otro vecino tiene un valor weight de 0 mientras que las aprendidas por el router local tienen un valor de 32768. Si en un router que tiene dos vecinos queremos elegir las rutas de uno frente al otro utilizando el atributo weight, la forma de configurarlo es la siguiente: R6(config)# router bgp 400 R6(config-router)# network 4.0.0.0 R6(config-router)# neighbor 192.168.2.1 remote-as 300 R6(config-router)# neighbor 192.168.2.1 weight 200 R6(config-router)# neighbor 192.168.1.2 remote-as 100 R6(config-router)# neighbor 192.168.1.2 weight 50

En este ejemplo el router R6 indica que las rutas a travs del SA 300 tienen mayor preferencia que las de SA 100. De esta forma si SA400 recibe un destino tanto a travs del SA 300 como del SA 100, el router R6 elegir a R5 como siguiente salto. El atributo local preference permite asignar valores de mtrica para el intercambio entre routers iBGP. A diferencia de weight, local preference s se intercambia con los vecinos internos del SA. Sin embargo, no se intercambia con los SA externos. Por defecto, su valor es 100. El atributo as-path indica los nmeros de los sistemas autnomos a travs de los cuales una ruta ha pasado. El atributo MED (Multi-Exit Discriminator), a diferencia de weight y local preference que son locales, indica a los vecinos del AS qu enlace tienen que utilizar para enviar el trfico. Se utilizar como una mtrica y nos ser de utilidad en los escenarios de multi-homing. Estos atributos se pueden modificar utilizando un mecanismo que veremos posteriormente y que se denomina route-maps. No obstante, antes de adentrarnos en la explicacin de los route maps, estudiaremos las denominadas listas de filtrado, distribucin y de prefijos as como para el filtrado de la informacin que enviaremos a otros vecinos, pues estos mecanismos nos sern de utilidad en la configuracin de route-maps.

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

Listas de control de acceso


Las listas de control de acceso (ACLs) [5, 6] permiten filtrar trfico. En particular, stas son utilizadas en BGP para delimitar las rutas que un router anuncia a sus vecinos. Las listas de control de acceso permite realizar el filtrado de paquetes en funcin de diversas opciones: direccin origen direccin destino tipo de paquete cualquier combinacin de los elementos anteriores En funcin de esta informacin, la ACL puede permitir o bloquear el anuncio de ciertas rutas a un vecino. Una ACL es una coleccin secuencial de condiciones permitir o denegar que se aplican a un paquete IP. A cada lista se le asigna un nmero de lista. El router comprueba cada condicin de la lista secuencialmente y en la primera coincidencia el router para de realizar comprobaciones. Si no se cumple ninguna condicin entonces se produce un rechazo. En los routers Cisco, podemos distinguir dos tipos principales de ACLs: listas de acceso estndar y listas de acceso extendidas. Mientras que las listas estndar se configuran con nmeros entre 1 y 99, las extendidas se configuran con nmeros entre 100 y 199. La forma habitual de definir una lista de acceso es mediante el siguiente comando: access-list access-list-number {deny | permit} source [sourcewildcard] [log] A continuacin mostramos un ejemplo la lista que configuraramos para permitir el acceso a hosts de tres redes especficas y denegar cualquier otra direccin: access-list 1 permit 192.5.34.0 0.0.0.255 access-list 1 permit 128.88.0.0 0.0.255.255 access-list 1 permit 36.0.0.0 0.255.255.255 ! El resto est implcitamente denegado A continuacin mostramos un ejemplo de una lista de acceso que filtra a un host especfico dentro de una subred. access-list 99 deny host 192.168.10.100 access-list 99 permit 192.168.10.0 0.0.0.255 Las listas extendidas permiten un mayor control del trfico ya que nos permiten especificar protocolos, puertos, etc. Su sintaxis es la siguiente:

Boletn 6: BGP

Grado en Ingeniera Informtica

Arquitectura de Redes

access-list access-list-number [dynamic dynamic-name minutes]] {deny | permit} protocol source source-wildcard destination destination-wildcard [precedence precedence] [tos tos] [log | log-input] [time-range time-range-name][fragments]

[timeout

A continuacin mostramos un ejemplo de una lista que filtra el trfico SMTP (puerto 25). access-list 102 deny tcp any any eq 25 access-list 102 permit ip any any Una vez creada una lista, sta se puede aplicar a una interfaz mediante el comando ip access-group list {in | out} donde in y out indican si se aplica al trfico de entrada o de salida. Si no se especifica, por defecto, se aplica al de entrada.

Route maps
Los mapas de rutas (route maps) se utilizan para controlar y modificar la informacin de enrutamiento que se intercambia con los vecinos. A continuacin se muestra la forma de especificar la utilizacin un mapa de rutas para controlar la informacin de enrutamiento intercambiada con un vecino.

RA1(config)# router bgp XXX RA1(config-router)# network XXX.XXX.XXX.XXX mask yyy.yyy.yyy RA1(config-router)# neighbor xxx.xxx.xxx.x.xx remote-as zzz RA1(config-router)# neighbor xxx.xxx.xxx.x.xx route-map route-map-name

Para definir un mapa de rutas utilizaremos la siguiente sintaxis: routemap maptag [[permit | deny] | [sequencenumber]] donde map-tag es el nombre que se le da al route map. Si hay varias definiciones de route maps con el mismo nombre, entonces se considerarn como si fuese una sola. El uso de los parmetros permit o deny se utiliza para determinar si se permite o deniega la informacin de enrutamiento. En este comando, sequence-number permite especificar un nmero de orden entre los route maps asociados al mismo nombre (map-tag).

Boletn 6: BGP

10

Grado en Ingeniera Informtica

Arquitectura de Redes

Cada comando route-map puede tener asociado una lista de comandos match y set. Mientras que con el comando match especificamos los criterios bajo los que se permite la redistribucin, el comando set especifica las acciones a realizar si se cumplen los criterios especificados con el comando match. En muchos casos como criterios de coincidencia se utilizan ACLs. Los comandos match que se pueden utilizar para BGP aparecen en [7, 8]. De estos comandos, nos sern de especial utilidad los siguientes: match as-path. Para comprobar si coincide una lista de acceso de camino de sistema autnomo. match ip interface. Comprueba rutas que tengan su siguiente salto en una de las interfaces especificadas. match ip address. Para comprobar rutas que tengan una direccin de red. match ip next-hop. Comprueba cualquier ruta que tenga una direccin de router de siguiente salto especificado en una lista de acceso especificada. match ip metric. Se utiliza para comprobar rutas con una mtrica especfica. match route type. Comprueba rutas de un tipo especfico. De forma similar a los comandos match, los comandos set que se pueden utilizar para BGP aparecen en [7, 8]. De estos comandos, los principales para nosotros sern: set as-path. Modifica un camino de sistema autnomo para una ruta BGP. Se utiliza para hacer prepend sobre un determinado camino a un SA. De esta forma la sentencia sera: set as-path prepend XX XX XX, donde XX es el mismo identificador repetido varias veces para alargar el camino de una ruta. set local preference. Para establecer la preferencia local. set metric. Establece la mtrica a utilizar (atributo MED). set next-hop. Especifica la direccin del siguiente salto. set origin. Establece el origen de las rutas (IGP o EGP). set weight. Permite establecer el peso. A continuacin mostramos un ejemplo de route-map que permite modificar la preferencia local y la mtrica para que en un escenario donde un SA (SA 600 en la Figura 1) est conectado a otro (SA 500 en la Figura 1) mediante dos enlaces, que uno de los enlaces se utilice como enlace primario y el otro para cuando falle el primero (backup). En este caso vemos que no se utiliza la sentencia match y s la sentencia set. La configuracin que se muestra no es completa, si no que se parte del supuesto que tenemos establecida ya la configuracin bsica.

Boletn 6: BGP

11

Grado en Ingeniera Informtica

Arquitectura de Redes

R14(config)# route-map backupIn permit 10 R14(config-route-map)# set local-preference 90 R14(config)# route-map backupOut permit 10 R14(config-route-map)# set metric 10 R14(config)# router bgp 600 R14(config-router)# neighbor 10.0.0.2 remote-as 500 R14(config-router)# neighbor 10.0.0.2 route-map backupIn in R14(config-router)# neighbor 10.0.0.2 route-map backupOut out Basndonos en este ejemplo, lo podramos modificar para mostrar el uso de las clusulas match. En este escenario podramos indicar que uno de los enlaces es primario y otro secundario. Adems, podramos considerar que para el escenario nos interesa que el enlace de backup se utilice para cuando las rutas vienen del SA 400.

R4(config)# ip as-path access-list 5 permit _400$ R4(config)# route-map backupIn permit 5 R4(config-route-map)# match as-path 5 R4(config-route-map)# set local-preference 120 R4(config)# route-map backupIn permit 10 R4(config-route-map)# set local-preference 90 R4(config)# route-map backupOut permit 10 R4(config-route-map)# set metric 10 R4(config)# router bgp 600 R4(config-router)# neighbor 10.0.0.2 remote-as 500 R4(config-router)# neighbor 10.0.0.2 route-map backupIn in R4(config-router)# neighbor 10.0.0.2 route-map backupOut out

neighbor remove-private
Este comando permite eliminar los nmeros de sistema autnomo privado. As cuando en el router de un SA se produce una actualizacin que se enva a un vecino externo, los nmeros de SA privados se eliminan. En la Figura 1

Boletn 6: BGP

12

Grado en Ingeniera Informtica

Arquitectura de Redes

el SA 400 sera el responsable de ocultar el nmero de SA 65512 al resto de los vecinos de SA. Un ejemplo de su uso sera el siguiente:

RA1(config)# router bgp 400 RA1(config-router)# network 4.0.0.0 RA1(config-router)# neighbor 10.0.4.2 remote-as 65000 RA1(config-router)# neighbor 10.0.4.2 remove-private-AS

Filtrado y creacin de polticas BGP


Habitualmente en BGP es necesario delimitar la informacin que enviamos a nuestros vecinos. Algunos de estos motivos es evitar que se conecten a otro SA a travs de nosotros, aprovechndose de nuestros recursos en lugar de utilizar los suyos propios. A continuacin veremos tres mecanismos para delimitar la informacin que compartimos con nuestros vecinos.

Listas de filtros
Las listas de filtros (filter lists) nos permiten filtrar caminos de SAs. Este tipo de filtros utiliza expresiones regulares para comprobar si la informacin de los ASs que atraviesa una determinada ruta satisface una condicin y, en consecuencia, permitir o denegar esa ruta. Para configurar estas listas se utiliza el comando neighbor. A continuacin mostramos un ejemplo de una lista de filtros. En este caso el router R6 est filtrando a su vecino R7 todas las rutas que tienen origen en el SA 800. El ejemplo tiene los comandos que habra que aadir supuesto que ya tenemos la configuracin bsica. Una vez configurado, en el router R6 ejecutaramos el comando clear ip bgp *.

R6(config)# ip as-path access-list 1 deny _800$ R6(config)# ip as-path access-list 1 permit .* R6(config)# router bgp 400 R6(config-router)# neighbor 10.0.4.2 filter-list 1 out

Listas de distribucin
Las listas de distribucin (distribute lists) son ACLs que se utilizan para permitir o denegar rutas a travs de la red. Este filtrado de rutas BGP se puede llevar a cabo tanto en la entrada como en la salida. A continuacin se muestra un ejemplo de configuracin.

Boletn 6: BGP

13

Grado en Ingeniera Informtica

Arquitectura de Redes

R7(config)# access-list 10 permit ip 172.16.0.0 0.0.255.255 host 255.255.0.0 R7(config)# router bgp 700 R7(config-router)# network 7.0.0.0 R7(config-router)# neighbor 10.0.4.1 remote-as 400 R7(config-router)# neighbor 10.0.4.1 distribute-list 10 in Al final de cada lista siempre hay un deny all implcito. En este ejemplo, se permite slo trfico de la red 172.16.0.0. El principal problema de estas listas es que su modificacin implica empezar de nuevo el proceso. Esto se debe a que las listas se leen en el orden en que se escriben.

Listas de prefijos
Las listas de prefijos (prefix lists) aparecen como una alternativa a las listas de distribucin. Entre ambas la principal diferencia es que las listas de prefijos son ms flexibles (permiten actualizaciones incrementales), ms fciles de configurar y ofrecen un mayor rendimiento a la hora de procesarlas. Estas listas permiten aadir o borrar lneas sin starting over. Para crear una lista de prefijos utilizamos el comando ip prefix-list. Su sintaxis es: ip prefix-list list-name [seq seq-value] deny|permit network/len [ge gevalue] [le le-value] donde: list-name es el nombre que le damos a la lista. seq-value un nmero de secuencia que identifica a un prefijo dado dentro de la lista. A la hora de hacer las comprobaciones se empieza por el menor nmero de secuencia. Estos nmeros se generan automticamente. [ge ge-value] [le le-value]. Permiten especificar el rango de la longitud del prefijo para ver si se produce coincidencia con los prefijos a comprobar. Si no se especifica un rango se buscar una comprobacin exacta. A continuacin se muestra un ejemplo de configuracin donde podemos ver cmo el router R6 filtra la informacin que le pasa a su vecino R8 permitiendo que pase slo la informacin de SA 600 y de SA 65000. En el ejemplo slo hemos reflejado la informacin que aadiramos a partir de la configuracin bsica de BGP. Hemos remarcado los comandos que permiten la definicin y aplicacin de las listas de prefijos.

Boletn 6: BGP

14

Grado en Ingeniera Informtica

Arquitectura de Redes

RA6(config)# ip prefix-list myprefixes seq 10 permit 7.0.0.0/8 RA6(config)# ip prefix-list myprefixes seq 15 permit 4.0.0.0/8 RA6(config)# ip prefix-list myprefixes seq 20 permit 44.0.0.0/8 RA6(config)# router bgp 400 RA6(config-router)# neighbor 10.0.32 prefix-list myprefixes out

Monitorizacin
Para la monitorizacin del sistema y depurar problemas de conectividad, el router CISCO nos da la posibilidad de utilizar el modo debug. El modo debug (con el comando debug ip bgp X) en BGP permite especificar qu informacin queremos monitorizar (indicado en el parmetro X). En concreto, podemos monitorizar los siguientes parmetros BGP: o events. Los eventos que ocurren en el sistema. o in. Informacin recibida. o keepalives. Muestra los eventos relacionados con los paquetes BGP Keepalive. o Out. Muestra toda la informacin de salida de BGP. o updates. Muestra la informacin sobre todos los paquetes BGP Update. A continuacin se muestra alguna informacin de debug que aparece cuando queremos monitorizar los eventos. Para deshabilitar el debug bastar con que escribamos de nuevo el comando precedido de no.

Boletn 6: BGP

15

Grado en Ingeniera Informtica

Arquitectura de Redes

Router# debug ip bgp events


BGP events is on 00:26:10: BGP: reset all neighbors due to User reset 00:26:10: BGP: 10.0.0.2 reset due to User reset 00:26:10: %BGP-5-ADJCHANGE: neighbor 10.0.0.2 Down User reset 00:26:10: BGP: 10.0.1.2 reset due to User reset 00:26:10: %BGP-5-ADJCHANGE: neighbor 10.0.1.2 Down User reset 00:26:10: BGP: 192.168.1.2 reset due to User reset 00:26:10: %BGP-5-ADJCHANGE: neighbor 192.168.1.2 Down User reset 00:26:10: BGP: 192.168.2.2 reset due to User reset 00:26:10: %BGP-5-ADJCHANGE: neighbor 192.168.2.2 Down User reset 00:26:18: BGP: Performing BGP general scanning 00:26:18: BGP(0): scanning IPv4 Unicast routing tables 00:26:18: BGP(IPv4 Unicast): Performing BGP Nexthop scanning for general scan 00:26:18: BGP(1): scanning VPNv4 Unicast routing tables 00:26:18: BGP(VPNv4 Unicast): Performing BGP Nexthop scanning for general scan 00:26:18: BGP(2): scanning IPv4 Multicast routing tables 00:26:18: BGP(IPv4 Multicast): Performing BGP Nexthop scanning for general scan

Router# no debug ip bgp events BGP events debugging is off

3. Configuracin avanzada de BGP


En esta seccin vamos a abordar aspectos avanzados de la configuracin de BGP: generacin de una ruta por defecto, modificacin de la distancia administrativa (AD) asignada por defecto y configuracin de distintos parmetros que afectan al proceso de convergencia.

Ruta por defecto


Para enviar una ruta por defecto a un vecino el comando que utilizaremos ser: neighbor X.X.X.X default-originate. De esta forma al vecino se le enva la ruta por defecto (0.0.0.0).

Cambiar la distancia administrativa por defecto


BGP utiliza tres distancias administrativas diferentes: externas, internas y locales. Se asigna una distancia externa a aquellas aprendidas a partir de eBGP, mientras que las distancias internas se asocian a las rutas aprendidas desde iBGP. Finalmente, se asigna una distancia local a aquellas rutas que son parte del sistema autnomo. La forma de cambiar la distancia administrativa es ejecutar en el modo de configuracin: distance bgp external-distance internal-distance local-distance

Boletn 6: BGP

16

Grado en Ingeniera Informtica

Arquitectura de Redes

Cambiar parmetros convergencia

que

afectan

al

proceso

de

Los parmetros que afectan al proceso de convergencia y que podemos modificar en BGP son los tiempos de keepalive y holdtime. Estos tiempos se pueden cambiar para todos los vecinos (con el comando timers bgp keepalive holdtime). Tambin se puede especificar para un vecino concreto (neighbor x.x.x.x timers keepalive holdtime).

4. Bibliografa
[1] Y. Rekhter, T. Li, S. Hares. A Border Gateway Protocol 4 (BGP-4). Request for Comments 4271. IETF (Enero de 2006). [2] CCNA: Cisco Certified Network Associated Study Guide. 5th Edition. Toadd Lammle. Sybex. [3] Troubleshooting IP Routing Protocols. CCIE Professional Development. Z. Aziz, J. Liu, A. Martey, F. Shamim. CiscoPress. [4] Cisco IOS IP Configuration Guide. http://www.cisco.com/en/US/docs/ios/12_0/np1/configuration/guide/1cbgp .html [5] Configuring IP Access Lists. http://www.cisco.com/en/US/products/sw/secursw/ps1018/products_tech_ note09186a00800a5b9a.shtml [6] Configuring Commonly Used IP ACLs. http://www.cisco.com/en/US/tech/tk648/tk361/technologies_configuration_ example09186a0080100548.shtml [7] Route-Maps for IP Routing Protocol Redistribution Configuration. http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a00 8047915d.shtml [8] Cisco IOS IP Command Reference, Volume 2 of 4: Routing Protocols, Release 12.3. http://www.cisco.com/en/US/docs/ios/12_3/iproute/command/reference/ipr rp_r.html

Boletn 6: BGP

17