2014 YO SÉ NETWORKING

BGP

Juan Zambrano Teleccna.cl 08/01/2014

YO SÉ NETWORKING 2014 ÍNDICE Proyecto YO SÉ NETWORKING ............................................................................................ 3 BGP ......................................................................................................................................... 4 Tipos de conexiones a ISPs .............................................................................................. 5 Singlehomed ISP Connectivity. ................................................................................... 5 Dual-Homed ISP Connectivity ..................................................................................... 5 Multihomed ISP Connectivity. ..................................................................................... 6 Multihomed mejor ruta ................................................................................................ 7 IBGP y EBGP ....................................................................................................................... 8 Tipos de Sistemas Autónomos ........................................................................................ 9 Sistema autónomo de transito.................................................................................... 9 Sistema Autónomo de no transito ............................................................................ 10 ¿Cuándo usar BGP?....................................................................................................... 10 Campos importantes en un segmento BGP .............................................................. 11 Configuración de vecinos ............................................................................................ 12 Regla de sincronización de BGP .................................................................................. 13 Tablas de BGP ................................................................................................................. 14 Tipos de mensajes de BGP ............................................................................................ 15 Atributos de BGP ............................................................................................................ 16 Atributo AS-PATH ......................................................................................................... 19 Atributo Next-hop ....................................................................................................... 19 Atributo Origin ............................................................................................................. 19 Atributo Local Preference ......................................................................................... 20 Atributo Community ................................................................................................... 20 Atributo MED................................................................................................................ 20 Atributo WEIGHT .......................................................................................................... 20 Selección de la mejor ruta: ........................................................................................... 21 Configurando BGP ......................................................................................................... 22 Anunciando redes ...................................................................................................... 23 Actualizar políticas aplicadas a rutas...................................................................... 25

1

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 EBGP Multihop ............................................................................................................. 26 Dirección del próximo salto ...................................................................................... 27 Peer groups .................................................................................................................. 29 Autenticación ............................................................................................................. 29 Sumarizar ...................................................................................................................... 30 Filtro de rutas con lista de distribución..................................................................... 31 Prefix-list ........................................................................................................................ 32 Sistema autónomo de no transito ............................................................................ 33 Filtrar todos los prefijos de un sistema autónomo .................................................. 35 Evitar anunciar los sistemas autónomos privados .................................................. 35 Local preference ........................................................................................................ 36 MED ............................................................................................................................... 36 Balanceo de carga en Links EBGP ........................................................................... 37 Comandos de verificación de BGP: ........................................................................... 40 Identificando atributos............................................................................................... 40 Comprobando mejor ruta ......................................................................................... 41 Identificando problemas de autenticación: .......................................................... 42 Errores de adyacencia .............................................................................................. 43 Generando adyacencia ........................................................................................... 44 Problemas con route-map ........................................................................................ 45

2

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Proyecto YO SÉ NETWORKING Es un proyecto con el fin de adquirir mayor conocimiento de las tecnologías de networking, así como explicar de forma detallada información que muchas veces tenemos que buscar en distintas partes. Buscamos juntarlas todas en este y futuros documentos que realizaremos. Realizar aportes para nuestra carrera es de gran importancia, ya que nos ayuda a comprender de mejor forma las distintas tecnologías, adquiriendo un mayor nivel de conocimientos. Pienso que este material es de gran aporte ya que muchas veces los manuales de BGP los encontramos en ingles. La idea es que el idioma no sea una barrera para aprender lo que nos gusta. Por lo tanto los dejo a todos invitados a conocer nuestros materiales de estudio, disfrútenlos y compártalos. Los invito a ver NETWORKING de otra perspectiva con el proyecto YO SE NETWORKING.

Juan Zambrano

3

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 BGP Border Gateway Protocol (BGP) es el protocolo de enrutamiento utilizado en internet por los ISPs para interconectar distintos sistemas autónomos y sus redes. Su objetivo es proveer un enrutamiento entre sistemas autónomos libre de bucles. Soporta VLSM y CIDR, lo cual ayuda en gran medida a reducir el tamaño de grandes tablas de enrutamiento. BGP no requiere una arquitectura jerárquica y posee la capacidad de soportar múltiples conexiones, acompañándolas con excelentes políticas de control de rutas. Existen protocolos vector distancia como RIP y estado enlace como OSPF, a BGP se le conoce como un protocolo vector distancia mejorado, o también como protocolo Vector Path, siendo su métrica Path Vectors (Atributos). BGP busca el camino más estable hacia el destino, a diferencia de los otros protocolos de enrutamiento. Además este camino se basa en políticas de enrutamiento, lo cual permite controlar el flujo de tráfico entre los sistemas autónomos. BGP Versión 4 (BGP-4) es la última versión de BGP y es definida en la RFC 4271, además existe una extensión de esta última versión llamada BGP4+, la cual soporta múltiples protocolos, incluyendo IPV6, estas son definidas en la RFC 4760. Para entender el funcionamiento de BGP primero se deben tener conocimiento de los siguientes conceptos: Sistema Autónomo: Hace referencia a una red o grupo de redes administradas de manera independiente, donde se puede gestionar todo tráfico que pasa por ella. Los números de Sistemas Autónomos(AS) poseen 16 bits, es decir desde 1 – 65535 definidos en la RFC 1930, donde desde el 64512-65534 son privados. Actualmente existen sistemas autónomos de 32 bits. IGP: Interior gateway protocol, son los protocolos de enrutamiento de interior, es decir protocolos que corren dentro de un sistema autónomo, como por ejemplo RIP, EIGRP, OSPF, IS-IS. EGP: Exterior gateway protocol, son los protocolos que intercambian información de enrutamiento entre diferentes sistemas autónomos, como por ejemplo BGP. BGP es un protocolo normalmente utilizado por los ISPs, ya que logra administrar un gran flujo de información de enrutamiento que existe en todo internet. Por lo tanto para entender de mejor forma como funciona BGP y cómo influye este protocolo en la red de una empresa o un ISP debemos entender como son interconectados. En el siguiente capítulo se darán a conocer cuáles son las formas de conexión entre una empresa y un ISP.

4

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Tipos de conexiones a ISPs Singlehomed ISP Connectivity. Este tipo de conexión solo posee un enlace al ISP, por lo tanto no es tolerante a fallas. Existen dos formas de conectarse a Internet: La primera opción es generando una ruta por defecto hacia el ISP, y a su vez el ISP genera una ruta estática hacia la red de la empresa. Esta opción no es la mejor, ya que el ISP debe estar configurando y realizando modificaciones en sus redes manualmente cada vez que la empresa decida realizar nuevos cambios. Además les toma demasiado tiempo a los equipos del ISP aprender esta nueva red. Por lo tanto la mejor opción es la 2. La opción 2 utiliza BGP como protocolo de enrutamiento entre el ISP y la empresa, esto genera en el ISP una mejor forma de conexión, ya que las nuevas rutas pueden ser anunciadas directamente desde la empresa hacia el ISP, y gracias a BGP estas nuevas redes son aprendidas muy rápidamente.

Figura 1.1

Dual-Homed ISP Connectivity Este tipo de conexión provee un enlace redundante, por lo tanto ante la falla del primer enlace, siempre estará disponible un segundo. También gracias al doble enlace se puede realizar balanceo de carga. En la opción 1 si el router borde falla se pierde la conectividad hacia internet, a pesar de que posea un doble enlace. La opción 2 posee una mayor resistencia a fallas, ya que si ocurre un problema en uno de los equipos siempre existe la posibilidad de utilizar el router Backup. Figura 1.2

5

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Multihomed ISP Connectivity. Hace referencia a la conexión de una empresa hacia dos ISP distintos. Si los enlaces hacia las empresas son redundantes se le llama dual Multihomed. Proveer Multihomed genera una red escalable, resistente a fallas, que permite realizar balanceo de carga entre los diferentes ISP, ya que posee más de una conexión a internet.

Figura 1.3

Sistema Autónomo de transito Al utilizar Multihomed se debe tener la precaución de definir como serán anunciadas las rutas hacia los ISP, ya que nuestra red podría ser utilizada por uno de los ISP como transito para alcanzar otros sistema autónomos. Figura 1.4

Cuando se decide implementar Multihomed existen realizar la conexión con el ISP.

3 principales formas de

1) Se crea en los routers borde una ruta por defecto hacia el ISP, donde el uso de la CPU será menor y la tabla de enrutamiento más pequeña. 2) Se construye una ruta por defecto hacia el ISP y éste nos envía algunas rutas específicas. Donde el uso de CPU será medio y la tabla de enrutamiento no será sobrecargada. 3) El ISP nos envía todas las rutas de las redes, donde el uso del CPU será extremo y la tabla de enrutamiento será demasiado grande. Normalmente los ISP utilizan esta opción. Entre más redes anunciadas por el ISP, más precisa será la decisión de enrutamiento.

6

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Multihomed mejor ruta Dentro de un sistema autónomo los IGP son los encargados de seleccionar el mejor camino, cuando se decide redistribuir una ruta por defecto en un IGP puede suceder que no siempre se seleccione el mejor camino para alcanzar el destino fuera de la red. Por ejemplo, la red de la Empresa en el sistema autónomo 65500 desea conectarse con la red del Cliente perteneciente al sistema autónomo 64520. Si se decide redistribuir una ruta por defecto en router A y router B dentro de un IGP como RIP, router C elegiría la ruta más corta dentro de su sistema autónomo, por lo tanto decidiría el camino por router A, debido que existen menos saltos.

Figura 1.5

Router A decidiría utilizar la ruta por defecto hacia ISP A perteneciente al sistema autónomo 65000. Este camino no es el más óptimo para llegar a la red destino del Cliente, ya que fue influenciado por el IGP de la red de la Empresa. La solución para este problema está en aplicar BGP, utilizando sus políticas y atributos, para influenciar el tráfico por el camino más optimo para alcanzar las redes deseadas.

7

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 IBGP y EBGP IBGP hace referencia a la conexión entre dos routers que corren BGP dentro de un mismo sistema autónomo, como por ejemplo, Router A, B, C y D son IBGP dentro del SA 65000. EBGP son los Routers borde que interconectan los distintos SA, como por ejemplo Router A del SA 65000 y Router E del SA 65250

Figura 2.1

Los mensajes BGP entre peers EBGP, se envian con un TTL de 1, por lo tanto solo se puede generar adyacencia EBGP entre routers borde, ya que no permite mas de un salto. El TTL entre routers IBGP siempre es mayor a 1, (En Dynagen es 255), lo que permite generar adyacencia entre vecinos que no se encuentran directamente conectados. Problemas de Update

Figura 2.2

Según la regla de BGP split horizon especifica que las rutas aprendidas via IBGP nunca son propagadas a otros IBGP peers.

8

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Tipos de Sistemas Autónomos Sistema autónomo de transito Un AS de transito es el encargado de transportar trafico entre sistemas autónomos, como por ejemplo el trafico entre distintos ISPs o sucursales. En un sistema autónomo de transito todos los routers deben tener completo conocimiento de las rutas externas. Una opción para lograr esto es redistribuyendo todas las rutas en el IGP que corre dentro del sistema autónomo, sin embargo esto puede provocar problemas. Al redistribuir las rutas dentro de un IGP las tablas de enrutamiento serán gigantescas y protocolos como Ospf o Eigrp no podrán soportarlas. Figura 3.1

Otra opción es correr IBGP solo en los routers borde, pero esto generá otro problema. Al momento de anunciarse redes externas, éstas serán informadas solo a los routers borde IBGP, y al momento de que el trafico atraviese el sistema autónomo de transito existirán routers que que no tengan un destino hacia esa red (como R1 y R3 de la figura 3.1), ya que no las aprendieron vía BGP y no poseen un camino vía IGP. Por lo tanto estos paquetes serán descartados. La solución es correr IBGP en todos los routers dentro del sistema autónomo de transito, realizando un full mesh entre routers que corren BGP. Ejemplo full-mesh

Figura 3.2

9

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Sistema Autónomo de no transito En un sistema autónomo Multihomed se aconseja correr IBGP en los routers borde. Los routers que hablarán IBGP solo pasaran las rutas a su vecino IBGP, y estos vecinos no pasaran estas rutas a otros. De esta forma se asegura BGP de evitar bucles de enrutamiento, pero esto a su vez es un problema en sistemas autónomos de transito. Cuando el sistema autónomo no es de transito, las decisiones de salida pueden ser tomadas por el IGP, evitando correr IBGP en todos los router del sistema autónomo. Por ejemplo se puede redistribuir una ruta por defecto dentro de IGP en cada router borde, pero como existen dos salidas, puede que esta decisión no sea la mejor, ya que la mejor salida será influenciada por el IGP. Por lo tanto para seleccionar el mejor camino se debe correr IBGP en todos los routers, ya que él será el encargado de decidir cuál será la mejor salida. Cabe recordar que las redes que serán aprendidas por los IBGP no necesariamente serán todas las existentes en Internet, por lo tanto la empresa puede tomar la decisión de aprender solo las redes necesarias, a las que le interesa escoger el mejor camino, y para todas las demás, tomar la ruta por defecto redistribuida.

¿Cuándo usar BGP? Se debe utilizar BGP cuando se tiene un buen entendimiento de su funcionamiento y además se cumple una de las siguientes condiciones: - El sistema autónomo será utilizado como transito para alcanzar otros sistemas autónomos. Por ejemplo un ISP. - Cuando un sistema autónomo posee más de una conexión a otros sistemas autónomos. - Cuando se desea aplicar políticas de enrutamiento sobre el trafico que entra y sale del sistema autónomo Normalmente no es necesario usar BGP cuando se posee una sola salida en la red, por lo tanto en estos casos solo con una ruta estática o ruta por defecto bastaría. No se debe usar BGP cuando existen las siguientes condiciones: - Existe solo una conexión a Internet o a un sistema autónomo. - Pocos recursos de hardware, cuando existe muy poca memoria en el router o el procesador no soporta constantes actualizaciones de BGP. - Cuando se posee limitado conocimiento sobre el proceso de selección de rutas de BGP.

10

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Campos importantes en un segmento BGP Bgp usa TCP como protocolo de transporte, lo cual significa que es orientado a la conexión. Por lo tanto BGP envía la información dentro de segmentos, usando el puerto 179 y el número de protocolo 6, como se muestra en la Figura4.1

Figura 4.1

Captura segmento BGP También cabe destacar que cuando dos routers se interconectan bajo una sesión TCP son conocidos como BGP peer routers o BGP neighbors. Como BGP implementa un protocolo confiable, no son necesarias actualizaciones periódicas y solo son necesarias actualizaciones incrementales o generadas por eventos. En un mensaje Open de BGP podemos encontrar algunos de los parámetros más importantes, los cuales utiliza BGP para identificar por ejemplo si se generará una adyacencia IBGP (comparando el sistema autónomo marcado en azul), identificar el Hold Time configurado, y cuál es la dirección IP con la cual se generará la adyacencia (BGP Identifier).

Figura 4.2

Figura2- Captura Message.

11

PROTOCOLO DE ENRUTAMIENTO BGP

paquete

BGP

OPEN

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Configuración de vecinos BGP no funciona igual que los otros protocolos de enrutamiento IGP, y exige primero identificar quiénes serán sus vecinos. Ya que la vecindad no necesita ser directa, también existen restricciones respecto a las vecindades. Por ejemplo, dentro de un sistema autónomo se pueden generar Neighbors, a pesar de que estos no se encuentren directamente conectados (IBGP), pero solo el router borde puede generar vecindad con el router perteneciente al otro sistema autonomo (EBGP).

Figura 5.1

Un Router EBGP intentará conversar con su neighbor, por lo tanto éste debe poder ser alcanzado, y ya que esta directamente conectado, no necesita de otro protocolo (como un IGP). Cuando se inicia la conversación entre los EBGP se genera un three-way handshake, por la sesión TCP entre ambos. Por lo tanto al declarar un vecino con el comando Neighbor éste debe ser alcanzable. Ya que no es necesario que los vecinos estén directamente conectados, normalmente se decide usar interfaces loopbacks para el establecimiento de la sesión TCP entre los routers, esto permite que cuando existan caminos redundantes hacia un vecino, la caída de una interfaz física no afecte la adyacencia.

12

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Regla de sincronización de BGP La regla de sincronización de BGP indica que en un sistema autónomo de transito, encargado de transportar tráfico entre redes, BGP nunca debería anunciar las redes antes de que el IGP aprenda las rutas. Por lo tanto ambos deberían ser sincronizados. Esto ayuda a que no ocurran problemas dentro del sistema autónomo cuando se utiliza como transito, ya que siempre poseerá un camino dentro del la red de la empresa, y no generará un Black Hole. Como se dijo anteriormente no es una buena práctica redistribuir todas las rutas dentro del IGP, por lo tanto se recomiendo correr IBGP Full-mesh en todos los routers en la red de transito y deshabilitar la sincronización. En Cisco IOS Software Release 12.2(8)T se encuentra deshabilitada por defecto. Ejemplo Black Hole. Si se corre BGP solo en los routers borde, y la sincronización se encuentra deshabilitada, los routers R1 y R3 no sabrán cómo alcanzar las redes fuera de su sistema autónomo, ya que solo corren un protocolo de enrutamiento IGP. Por lo tanto a pesar de que entre R2 y R4 se compartan todas las rutas conocidas vía IBGP y que puedan alcanzar el siguiente salto vía IGP o con Next-hop-self, cuando los paquetes viajen a través de R1 o R3, serán descartados. La red entre RA y R2 fue aprendida vía IGP al igual que la red entre R4 y RB. R2 al momento de recibir el paquete, revisa en su tabla BGP y encuentra un destino a la red 200.0.0.0/24 del AS 65600. R2 decide reenviarlo a la dirección de RB, y para llegar a esta dirección utiliza el IGP, reenviándoselo así a R3. Al momento de recibir el paquete R3, revisa en su tabla de enrutamiento, y no posee un destino hacia la red 200.0.0.0/24. El paquete es descartado por R3, a pesar de que conozca como llegar a RB, ya que el paquete posee como destino la red 200.0.0.0 y no la dirección de RB.

Figura 6-1

13

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Tablas de BGP BGP mantiene su tabla de enrutamiento separada de la tabla de IGP, y ofrece las mejores rutas a la tabla de enrutamiento IGP. También pueden ser redistribuidas las rutas de la tabla de BGP a la tabla de enrutamiento IP del IGP. La tabla de información de BGP se conoce con varios nombres: • BGP table • BGP topology table • BGP topology database • BGP routing table • BGP forwarding database

Las redes aprendidas por EBGP poseen una distancia administrativa de 20, y las IBGP poseen una distancia administrativa de 200. Por lo tanto solo pasan a la tabla de enrutamiento las rutas con menor distancia administrativa, en comparación con las rutas de los protocolos IGP. BGP también mantiene una Neighbors Table, la cual contiene una lista de sus vecinos con los cuales posee conexión. Para que BGP genere adyacencia debe ser asignado explícitamente el vecino con el comando Neighbor. Luego de establecer adyacencia, Bgp mantiene esta relación con mensajes BGP/TCP keepalive, los cuales son enviados siempre cada 60 segundos. Ejemplo de adyacencia con comando Neighbor R1(config)#router bgp 65000 R1(config-router)#neighbor 192.168.10.2 remote-as 65000 R1(config-router)# *Mar 1 00:09:05.671: %BGP-5-ADJCHANGE: neighbor 192.168.10.2 Up R2(config)#router bgp 65000 R2(config-router)#neighbor 192.168.10.1 remote-as 65000 R2(config-router)# *Mar 1 00:09:07.235: %BGP-5-ADJCHANGE: neighbor 192.168.10.1 Up

14

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Tipos de mensajes de BGP Cuando la sesión TCP se establece el primer mensaje en enviarse es el OPEN, si se logra establecer la conexión, se responde con un mensaje Keepalive.

Mensajes

Cuando la conexión ya ha sido establecida se intercambian los mensajes Update, keepalive y Notification. Los mensajes Update se utilizan para intercambiar sus tablas de enrutamiento, los keepalive se encargan de mantener la conexión arriba y los notification avisan algún error o condición especial.

-Open (19 – 4096 bytes) -Keepalive (19 bytes) -Update (19 – 4096 bytes) -Notification (19 – 4096 bytes)

Captura mensajes Open

Figura 7.1

Mensaje Update, intercambio de tabla de enrutamiento. En esta captura se puede apreciar cuando el Router le anuncia a su vecino IBGP una nueva red con un mensaje Update.

15

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Mensajes Update. Estos mensajes envían información sobre los Path, cada Path requiere de un mensaje update. Cada update posee los atributos respecto al path, y las redes que pueden ser alcanzadas por este path. Por lo tanto cada Update posee las Rutas con sus respectivos atributos (as-path, origin, local-preference, etc.). Parámetros de los paquetes BGP - Version

: Identifica la versión que corre BGP, posee 8 bit y actualmente es versión 4. - Sistema Autónomo : Identifica el sistema autónomo, posee 16 bit. - Hold-time : Tiempo de espera máximo entre los mensajes keepalive, posee 6 bit y por defecto son 180 segundos. - Optional Parameters. Estados de un Neighbor BGP. Los routers para generar adyacencia pasan por los siguientes estados: - Idle - Connect - Active - Open sent - Open Confirm - Established Cuando se encuentra en el estado Established, los mensajes OPEN, NOTIFICATION Y KEEPALIVE son intercambiados. Verificación rápida de estado de vecinos Un comando muy útil, cuando ya se encuentran configurados los neighbors es el #show ip bgp summary, con este comando se puede verificar el estado de un vecino, y determinar si existe algún problema en la adyacencia. También de puede verificar el sistema autónomo perteneciente a ese vecino, y el tiempo transcurrido desde que se generó la adyacencia. R1#show ip bgp summary Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 192.168.10.1 4 65000 0 0 0 0 0 never Active R1#show ip bgp summary

Atributos deVBGP Neighbor AS MsgRcvd MsgSent 192.168.10.1

16

4 65000

12

13

TblVer InQ OutQ Up/Down State/PfxRcd 4 0 0 00:08:16 0

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Los routers BGP envían mensajes update sobre redes, con sus respectivos prefijos y atributos. Estos prefijos y atributos se utilizan para seleccionar el mejor camino hacia una red. Los atributos pueden ser:   

Well-known / optional Mandatory / discretionary Transitive / nontransitive

Los atributos de ruta se dividen en cuatro categorías: • • • •

Well-known mandatory Well-known discretionary Optional transitive Optional nontransitive

Los atributos Well-known son los que deben ser obligatoriamente reconocidos por todos sus vecinos. Existen dos tipos, ―mandatory‖, los cuales deben ir obligatoriamente en todos los mensajes update de BGP y los Well-known discretionary, los cuales no necesariamente debe estar presente en todos los mensajes actualizaciones, pero si deben ser reconocidos por los routers BGP. Los atributos opcionales, no necesitan ser necesariamente reconocidos por los routers BGP. Existen dos tipos, Optional transitive, a pesar de que el router no implementan el atributo, lo debe pasar a otros routers, y los Optional nontransitive los cuales no implementan el atributo lo eliminan y no lo pasan a otros routers. Los atributos definidos por BGP son los siguientes:

Well-know mandatory attributes  AS-path  Next hop  Origin Well-know discretionary attributes  Local preference  Atomic aggregate

17

Optional transitive attributes  Aggregator  Community Optional nontransitive attribute  Multiexit-discriminator

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Además Cisco define un atributo llamado weight el cual es configurado localmente y no es propagado a los vecinos. Cisco define los siguientes códigos a los atributos: • Origin—Type code 1 • AS-path—Type code 2 • Next-hop—Type code 3 • MED—Type Code 4 • Local-preference—type code 5 • Atomic-aggregate—type code 6 • Aggregator—Type code 7 • Community—Type code 8 (Cisco-defined) • Originator-ID—Type code 9 (Cisco-defined) • Cluster list—Type code 10 (Cisco-defined) Estos tipos de códigos se utilizan para identificar el tipo de atributo dentro del mensaje UPDATE de BGP correspondiente a la ruta aprendida. En la captura se puede apreciar el código ―ORIGIN 1‖. Además también se puede ver los otros atributos que componen el UPDATE de la nueva red, como el AS_PATH, NEXT_HOP, etc.

Figura 8.1

18

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Atributo AS-PATH Lista los sistemas autónomos por los que pasa la ruta para llegar a la red, se utiliza para asegurar un camino libre de bucles, ya que el router no aceptará una ruta que posea un sistema autónomo por el cual ya atravesó. Además este atributo es well-known mandatory. Por ejemplo si el paquete viaja desde el AS 52100 al AS52500 y toma el camino 52100 – 52200 – 52300 – 52400, al momento de decir el camino, nunca lo enviará al 52200, ya que por este ya pasó. Como se muestra en la figura 9.1

Figura 9.1

Atributo Next-hop Este atributo indica la dirección IP del siguiente salto para alcanzar la red destino. El siguiente salto no necesariamente debe estar directamente conectado, sino que más bien es la dirección IP del router quien anunció la red. Este atributo es well-known mandatory. Por ejemplo, router R3 tiene como Next-hop de la red 10.20.0.0 la dirección IP 192.168.10.1 del router R1. Figura 9.2

Atributo Origin Indica como fue aprendida la ruta, si fue aprendida a partir de un IGP utilizando el comando network, se marca una ―I‖ en la tabla de BGP. Si la ruta fue aprendida por un EGP se marca con una ―e‖. Incomplete, es cuando el origen es desconocido, normalmente ocurre cuando una ruta es distribuida en BGP y es marcada con un signo ―?‖. Este atributo además es well-known mandatory.

19

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Atributo Local Preference Se utiliza para determinar cuál es la salida preferida en el sistema autónomo. Cuando el Local Preference es más alto, posee mayor prioridad, por lo tanto es mejor. Este atributo es enviado solo entre peers IBGP dentro del mismo sistema autónomo local y no es enviado entre peers EBGPs. Para routers Cisco el local preference por defecto es 100. Además este es un atributo well-known discretionary.

Atributo Community Este atributo es utilizado para realizar un filtrado de rutas. A las rutas de la comunidad se les asigna un TAG, para a partir de él poder tomar decisiones de filtrado de rutas pertenecientes a la etiqueta. Esto nos ayuda a tener un mejor control, ya que las comunidades comparten similares políticas. Este atributo es optional transitive.

Atributo MED Este atributo informa a los vecinos externos por cuál de las salidas del sistema autónomo local se prefiere que sean alcanzadas las redes locales, en otras palabras cual es la entrada preferida a la red. El menor valor MED es el preferido, por lo tanto posee mayor prioridad. Este atributo es enviado entre los vecinos EBGP y por defecto es 0. Este atributo es optional nontransitive attribute.

Atributo WEIGHT Este atributo es utilizado en el proceso de selección de ruta, tiene significancia local, por lo tanto no es propagado hacia los vecinos. Cuando existen múltiples rutas hacia un camino, la ruta con weight más alto será la preferida.

20

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Selección de la mejor ruta: Un router pasa la mejor ruta a tabla de enrutamiento, pero cuando existe más de una ruta para una red especifica, sigue los siguientes criterios: 1) Los routers cisco prefieren las rutas que posean mayor weigth. 2) Si aun así existe más de una ruta, se selecciona la ruta con mayor local preference. 3) Si las rutas poseen igual Local preference, se selecciona la ruta que fue generada localmente vía comando Network o agregate-address. 4) Si las rutas no fueron originadas localmente por el router, se prefiere la ruta con menor as-path. 5) Si el tamaño del as-path es el mismo, se prefieren las rutas menormente origininadas según el siguiente código: IGP
21

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Configurando BGP Para empezar a configurar se debe iniciar el proceso de BGP con el siguiente comando en modo configuración global: #router bgp numero de sistema autónomo  Solo se permite un proceso de BGP, por lo tanto si ya se ingresó un número de sistema autónomo y se intenta ingresar otro proceso, el Router notificará el número ya configurado. Luego con el comando Neighbor dentro de la configuración de BGP se define el vecino: #neighbor dirección IP remote-as numero del sistema autónomo del router vecino. Ejemplo Nota: Si en R3 se publican prefijos, estos solo serán pasados a R2 y no a R3. Según la regla de BGP split horizon, vista en la figura 2.2 pág 8.

R1(config)#router bgp 65000 R1(config-router)#neighbor 10.13.0.5 remote-as 65000 R2(config)#router bgp 65000 R2(config-router)#neighbor 10.13.0.2 remote-as 65000 R2(config-router)#neighbor 10.13.0.6 remote-as 65000 R3(config)#router bgp 65000 R3(config-router)#neighbor 10.13.0.1 remote-as 65000

Para lograr que todos posean las mismas rutas se debe implementar Full mesh entre todos los routers dentro del AS 65000 BGP. Como se revisó en la figura 3.2 pág 9. Otra buena opción es implementar route reflector.

Luego se puede comprobar que la adyacencia se ha generado ingresando el comando #show ip bgp summary, con esto verificamos el estado de los vecinos (State/PfxRcd), y si se ha logrado generar adyacencia entre ellos. R2#show ip bgp summary BGP router identifier 192.168.10.2, local AS number 65000 SiBGP se table encuentran configurados enversion ―STATE/PfxRcd‖ saldra algun numero version isbien 1, main routing table 1 indicando los prefijos recividos, si dice ACTIVE o IDLE significa que existe algun Neighbor entre V ambos AS vecinos. MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd problema 10.13.0.2 4 65000 8 8 1 0 0 00:05:28 0 10.13.0.6 4 65000 8 8 1 0 0 00:04:17 0

22

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Anunciando redes Para anunciar redes se debe usar el comando: #Network dirección de red mask mascara de la red Este comando se debe ingresar en la configuración de BGP y se debe escribir exactamente la dirección de red y mascara, sino arrojará aviso de error. Esto normalmente ocurre cuando se ingresa una dirección de host. También se debe tomar en cuenta que los routers borde son los encargados de anunciar las redes que se encuentran dentro del sistema autónomo, y ese router borde debe conocer todas las redes para poder anunciarlas. El router por ejemplo puede conocer las redes por un protocolo de enrutamiento como EIGRP y anunciar con el comando network dentro BGP las redes conocidas por este protocolo. Por lo tanto NO ES NECESARIO que las redes que se ingresen con el comando network se encuentren directamente conectadas al router borde, solo es necesario que las conozca por un protocolo enrutamiento o ruta estática. Ejemplo Router RB puede anunciar a ISP con el comando network las redes 11.0.0.0/8 y 12.0.0.0/8 a pesar de que no las tenga directamente conectadas, ya que estas redes las conoce por EIGRP. Es muy importante que las conozca porque si no, no podrán ser anunciadas.

Figura 10.1

23

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Ejemplo Adyacencia con loopbacks. En esta topología los 4 Routers pertenecen al mismo sistema autónomo (100), y todos corren EIGRP conociendo así todas las redes. La configuración de los neighbors debe ser hacia el Router borde (R1), en consecuencia los routers podrían ser configurados de la siguiente manera. R2-R3 (config-router)#Neighbor 10.0.0.1 remote-as 100 R4 (config-router) #Neighbor 10.0.0.13 remote-as 100 Por lo tanto NO ES NECESARIO que se configuren R4-R3 como neighbors ni R3 con R2. También hay que destacar la dirección IP de neighbor puede ser cualquier IP configurada en el router a la que se pueda alcanzar vía protocolo de enrutamiento IGP o ruta estática. Por lo tanto R4 puede configurar como vecino a R1 con el comando R4(config-router)#Neighbor 5.5.5.5 remote-as 100

Ya que puede alcanzar la dirección IP 5.5.5.5 por EIGRP. BGP identifica como origen la dirección IP de la interfaz de salida, por lo tanto en R4 se debe configurar como origen la dirección IP 4.4.4.4 con el siguiente comando: (config-router)#Neighbor 5.5.5.5 update-source loopback 0 Se aconseja utilizar las loopbacks para los neighbors cuando se tiene más de un camino hacia el otro Neighbor, para así no generar vecindad con la dirección de

24

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 la interfaz de salida, ya que podría fallar y al momento de seleccionar el otro camino hacia el neighbor cambiaría las direcciones IP y por lo tanto no se generaría vecindad. Si por alguna razón la topología no tiene configurado en todos los routers como vecino el router borde (R1), se pude utilizar route reflector. Es decir en la topología anterior si se configuran como Neighbors R1-R2, R2-R3 y R3-R4, el Router borde (R1) recibiría las rutas desde fuera del AS y se las anunciaría solo a R2 y a pesar de que R2 tenga vecindad con R3, no se las anunciará. Por lo tanto si se desea que se anuncien desde R2 hacia R3 se debe usar el comando #Neighbor dirección IP route-reflector-client En R2 apuntando como vecino a R3, y lo mismo en R3 apuntando como vecino a R4. Así las rutas se pasaran a los demás routers. Lo ideal es tener siempre todos los routers con neighbor al router de borde. Hay que tomar en cuenta que este problema no se daría si todos los routers en la topología pertenecieran a distintos sistemas autónomos. Por lo tanto si R1 R2 R3 R4 fueran cada uno un sistema autónomo diferente se pasarían las rutas sin ningún problema.

Actualizar políticas aplicadas a rutas. Al momento de aplicar nuevas políticas a las rutas, estas deben ser actualizadas, existen 3 caminos para actualizar las rutas: Hard reset: Se puede realizar con el comando clear ip bgp * o clear ip bgp dirección_vecino. Esto permitirá que se reinicie completamente la sesión TCP entre todos los vecinos (*) o un vecino especifico. El restablecimiento de la sesión toma entre 30 a 60 segundos y genera que se reenvíen todas las tablas de BGP, actualizando asi las nuevas políticas aplicadas. Soft reset: Utiliza gran parte de la memoria, ya que almacena todos los updates sin modificación en una tabla. Luego cuando se aplica el filtro, los cambios son calculados a partir de esta tabla. El comando es clear ip bgp soft. Route refresh: Solicita al peer el reenvío de toda la información, esto utiliza menos memoria, y permite al router aplicar las políticas de entrada. El comando es clear ip bgp {* | address | peer-group -name} in . Para poder utilizar route refresh, los routers deben soportar esta capacidad, esto se puede verificar con el comando show ip bgp neighbors.

25

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 EBGP Multihop Si poseemos dual homed para alcanzar un sistema autónomo, podríamos preferir que el tráfico fuera balanceado entre los enlaces. Esto permitiría aprovechar el ancho de banda de los enlaces para enviar el tráfico fuera de nuestra red, y que además exista un enlace de Backup. Para lograr esto, tenemos que generar adyacencia con loopbacks entre vecinos EBGP. Sin embargo los paquetes enviados entre vecinos EBGP poseen un TTL en 1, y para utilizar loopback necesitamos como mínimo dos saltos, por lo tanto debemos aplicar el comando ebgp-multihop como veremos a continuación. Topología:

Se debe aplicar el comando neighbor dirección_IP ebgp-multihop 2 para permitir que los mensajes de EBGP posean un TTL de 2, esto permitirá la adyacencia entre vecinos EBGP usando loopbacks. R1(config)#router bgp 65000 R1(config-router)#neighbor 200.200.200.200 remote-as 100 R1(config-router)#neighbor 200.200.200.200 ebgp-multihop 2 R1(config-router)#neighbor 200.200.200.200 update-source loopback 1 R1(config-router)#exit R1(config)#ip route 200.200.200.200 255.255.255.255 172.16.20.2 R1(config)#ip route 200.200.200.200 255.255.255.255 172.16.20.6 También se deben crear dos rutas estáticas hacia la dirección de loopback que generará la adyacencia, para que realicen un balanceo de carga entre los enlaces. R2(config)#router bgp 100 R2(config-router)#neighbor 100.100.100.100 remote-as 65000 R2(config-router)#neighbor 100.100.100.100 ebgp-multihop 2 R2(config-router)#neighbor 100.100.100.100 update-source loopback 1 R2(config-router)#exit R2(config)#ip route 100.100.100.100 255.255.255.255 172.16.20.1 R2(config)#ip route 100.100.100.100 255.255.255.255 172.16.20.5

26

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Dirección del próximo salto BGP anuncia las redes con la dirección del próximo salto, es decir las redes que conozca el router de borde vía BGP las anunciara a sus vecinos DENTRO de su sistema autónomo con la dirección IP del neighbor externo, por lo tanto todos los routers dentro del sistema autónomo deben saber cómo poder alcanzar esa dirección. Esto es muy importante, ya que puede ocurrir que los routers conozcan todas las redes de los sistemas autónomos externos y aun así no pueda llegar a ella, ya que no saben cómo alcanzar la dirección IP del próximo salto.

Ejemplo. A R1 se le informan las redes desde el Router fuera de su red. Para que R1 pueda alcanzar las redes tiene que dirigir el tráfico hacia la dirección 11.0.0.1, por lo tanto R1 puede llegar ya que se muestra en su tabla de enrutamiento como directamente conectada. R1 le informa vía IBGP a R4 las redes de los AS fuera de su red. Entonces R4 para poder alcanzar esas redes debe dirigir el tráfico a 11.0.0.1, y como R4 no la posee directamente conectada como R1, debe tratar de alcanzarla utilizando un protocolo de enrutamiento interno como EIGRP, OSPF, RIP o ruta estática. Hay que tomar atención al momento de configurar el protocolo de enrutamiento IGP, ya que debe ser anunciada la red 11.0.0.0 y finalmente aplicar passive interface, ya que no es parte del sistema autónomo. También si no se desea utilizar un protocolo de enrutamiento para que los routers conozcan la dirección 11.0.0.1 se puede configurar el comando #Neighbor dirección IP next-hop-self en el router de borde. En dirección IP ingresamos la IP de los vecinos que poseemos conectados. Es decir R1 le anuncia R4 que él será el próximo salto para alcanzar las redes anunciadas desde el router borde.

27

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014

Next Hop para rutas directamente conectadas o redistribuidas Cuando una red es conocida vía un IGP o se encuentra directamente conectada se muestra con next-hop 0.0.0.0, como vemos en el siguiente ejemplo:

R4(config-router)#do show ip bgp BGP table version is 10, local router ID is 172.16.24.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network *> 10.0.0.4/30 *> 10.0.0.8/30 *>i100.0.0.0/24 *> 172.16.20.0/30 *> 172.16.20.4/30 *>i172.16.23.0/24 *> 172.16.24.0/24 *>i172.16.25.0/24 *> 200.0.0.0 R4(config-router)#

Next Hop 172.16.20.6 0.0.0.0 10.0.0.6 172.16.20.6 0.0.0.0 172.16.20.1 0.0.0.0 172.16.20.6 10.0.0.10

Metric 332800 0 0 307200 0 0 0 0 0

LocPrf 100 100 100

Weight 32768 32768 0 32768 32768 0 32768 0 0

Path ? ? 100 i ? ? i i i 200 i

Captura de R4 perteneciente a la topología en la pág. 39

28

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Peer groups Se pueden crear peer groups para agrupar los vecinos que poseen iguales políticas, esto permite no tener que ingresar un comando por cada vecino al momento de aplicar las políticas. Para configurarlo primero se debe crear el peer group, el nombre asignado al peer group tiene significancia local y no es enviado otros routers. El comando para crear el peer group es: Router(config-router)#neighbor peer-group-name peer-group Asignar vecinos al grupo: Router(config-router)#neighbor ip-address peer-group peer-group-name Si se desea resetear las conexiones de vecinos en el grupo se debe ingresar el comando: Router(config-router)#clear ip bgp peer-group peer-group-name Si deseamos terminar la sesión para un vecino podemos aplicar el comando neighbor shutdown.

Autenticación BGP soporta Message disgest 5 para la autenticación de sus vecinos. MD5 envía un hash el cual es creado usando la llave y un mensaje. El Hash es enviado envés de la llave, por lo tanto la llave nunca viaja por la red. Para autenticar BGP, ambos vecinos deben poseer la misma configuración (contraseña) y su respectiva dirección IP del vecino. Para autenticar un vecino se debe ingresar la siguiente configuración en BGP: Ejemplo #Neighbor dirección ip password contraseña Dirección IP del vecino que se desea autenticar y contraseña.

29

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Sumarizar Si se poseen varias redes dentro de un sistema autónomo, se puede decidir sumarizarlas, para reducir el tamaño de la tabla de enrutamiento. Debido a que BGP no permite declarar redes que no se conocen, es necesario crear una red sumarizada. Para lograr la sumarización utilizaremos la siguiente topología:

R1(config)#interface loopback 1 R1(config-if)#ip address 192.168.0.1 255.255.255.0 R1(config)#interface loopback 1 R1(config-if)#ip address 192.168.0.1 255.255.255.0 R1(config)#interface loopback 1 R1(config-if)#ip address 192.168.0.1 255.255.255.0 R1(config)#ip route 192.168.0.0 255.255.252.0 null 0 R1(config)#router bgp 100 R1(config-router)#neighbor 172.16.20.2 remote-as 200 R1(config-router)#network 192.168.0.0 mask 255.255.252.0 R2(config-if)#router bgp 200 R2(config-router)#neighbor 172.16.20.1 remote-as 100

1)En el router que deseamos que anuncie la red sumarizada, creamos una ruta estática con la red sumarizada apuntando a null 0. 2)Luego en la configuración de BGP anunciamos la nueva red, que fue creada con la ruta estática. 3)En el vecino (R2) verificamos si la red fue anunciada, con el comando show ip bgp. Obtenemos como resultado la red sumarizada con /22.

R2#show ip bgp BGP table version is 2, local router ID is 172.16.20.2 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop *> 192.168.0.0/22 172.16.20.1

30

Metric LocPrf Weight 0 0

PROTOCOLO DE ENRUTAMIENTO BGP

Path 100 i Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Filtro de rutas con lista de distribución Los filtros de rutas se utilizan para evitar enviar redes a lugares que no se desean. Por ejemplo evitar enviar una red fuera del sistema autónomo de la Empresa. Ejemplo Primero se debe crear una Access list que indique las direcciones de las redes que se desean permitir o que se desean denegar. Por ejemplo:

Configuración Filtro con lista de distribución Access list, deniega la red R(config)#Access-list 1 deny red wildcard R(config)#Access-list 1 permit any Aplicar el filtro R(config-router)#Neighbor IP_neighbor distribute-list 1 out Si R2 desea filtrar la red 4.4.4.0/24 para que no sea aprendida por R1 se debe configurar lo siguiente: #Access-list 1 deny 4.4.4.0 0.0.0.255 Para denegar la red #Access-list 1 permit any Para permitir todas las demás redes y así no denegarlas todas. Aplicar el filtro #Neighbor 10.0.0.1 distribute-list 1 out Dirección del vecino que no se desea que aprenda las redes. Se aplica la lista de distribución de salida (out).

31

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Prefix-list Las prefix-list permiten un filtrado rápido de redes, son más cómodas y menos complejas que las ACL, ya que cada sentencia incluye un número de secuencia. Cada sentencia aumenta el número de secuencia en 5. Las prefix-list contienen un deny any implícito al final. Al momento de aplicarlas en BGP, se pueden realizar de entrada o salida. A continuación un se realiza un ejemplo aplicando sus características.

Permitir un prefijo específico: R1(config)#ip prefix-list RED_PERMITIDA permit 192.168.0.0/24 R1(config)#router bgp 65001 R1(config-router)#neighbor 200.0.0.2 prefix-list RED_PERMITIDA out Permite anunciar solo la red 192.168.0.0/24 y deniega todas las demás. Permitir todos los prefijos menores o iguales que: R1(config)#ip prefix-list MENORES16 permit 0.0.0.0/0 le 16 R1(config)#router bgp 65001 R1(config-router)#neighbor 200.0.0.2 prefix-list MENORES16 out Permite anunciar todas las redes con prefijos menores o iguales a 16. Es decir en este ejemplo se permite solo la 10.0.0.0/8 y la 172.16.0.0/16 Permitir todos los prefijos mayores o iguales que: R1(config)#ip prefix-list MAYORES16 permit 0.0.0.0/0 ge 16 R1(config)#router bgp 65001 R1(config-router)#neighbor 200.0.0.2 prefix-list MAYORES16 out Permite todas las redes con prefijos mayores o iguales a 16. Es decir las redes son permitidas 172.16.0.0/16 y 192.168.0.0/24.

32

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Sistema autónomo de no transito Cuando existe Multi-homed en un sistema autónomo de no transito debe aplicarse un filtro con lista de distribución para todas las redes que no fueron originadas dentro del sistema autónomo. Esto evita que nuestro sistema autónomo no sea utilizado como transito para los ISPs. Ejemplo: Utilizaremos la siguiente topología, donde AS100 y 200 pueden alcanzar sus redes utilizando nuestro sistema autónomo.

En R1 visualizamos que la red del AS100 puede ser alcanzada por nuestro sistema autónomo. Por lo tanto para evitar esto creamos un filtro, para permitir solo las redes generadas en nuestro sistema autónomo. R1#show ip route BGP 100.0.0.0/24 is subnetted, 1 subnets B 100.0.0.0 [20/0] via 10.0.0.9, 00:01:29 172.16.0.0/24 is subnetted, 3 subnets B 172.16.24.0 [20/0] via 10.0.0.9, 00:07:45 B 172.16.25.0 [20/0] via 10.0.0.9, 00:08:46 B 172.16.23.0 [20/0] via 10.0.0.9, 00:04:30 Para el filtro generamos una Access list en el router borde (R4) que permita todas las redes que fueron declaradas, es decir la 172.16.23.0, 172.16.24.0 y 172.16.25.0. Luego denegamos todas las otras redes con un deny any, como se visualiza en la siguiente configuración.

33

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Ejemplo configuración: R4(config)#access-list 1 permit 172.16.25.0 0.0.0.255 R4(config)#access-list 1 permit 172.16.24.0 0.0.0.255 R4(config)#access-list 1 permit 172.16.23.0 0.0.0.255 R4(config)#access-list 1 deny any R4(config)#router bgp 65000 R4(config-router)#neighbor 10.0.0.10 remote-as 200 R4(config-router)#neighbor 10.0.0.10 distribute-list 1 out Luego en R4 aplicamos la lista de distribución apuntando al vecino EBGP como salitda (out). Finalmente debemos aplicar el comando clear ip bgp * para reiniciar la adyacencia y actualizar las políticas aplicadas a las rutas. Verificamos en R1 que redes fueron aprendidas, y obtenemos como resultado que solo las redes que fueron generadas desde nuestro sistema autónomo son conocidas por R1. R1#show ip route bgp 172.16.0.0/24 is subnetted, 3 subnets B 172.16.24.0 [20/0] via 10.0.0.9, 00:01:26 B 172.16.25.0 [20/0] via 10.0.0.9, 00:01:56 B 172.16.23.0 [20/0] via 10.0.0.9, 00:01:56 Esta configuración también debe ser aplicada en R2 para que el AS 100 no conozca la existencia de la red 200.0.0.0 en el AS 100.

34

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Filtrar todos los prefijos de un sistema autónomo Pueden ser filtrados todos los prefijos de un sistema autónomo utilizando el atributo AS-PATH. Con este atributo podremos filtras todos los prefijos que hayan atravesado un determinado sistema autónomo. Ejemplo #Ip as-path Access-list 1 deny ^100Deniega todos los prefijos que empiecen o terminen con el sistema autónomo 100 #Ip as-path Access-list 1 permit .*

Permite todos los demás prefijos de todos los sistemas autónomos.

En la configuración de BGP se debe aplicar el filtro con el comando: #Neighbor 10.0.0.1 filter-list 1 out

Dirección IP del vecino que no se desea anunciar los prefijos que atraviesen por el Sistema autónomo 100.

Evitar anunciar los sistemas autónomos privados Se utiliza para anunciar las rutas pero no el número del sistema autónomo privado. Configuración: Este comando debe ser ingresado dentro de la configuración de BGP. #Neighbor dirección IP remove-private-as Dirección IP del vecino que no se desea anunciar el número de sistema autónomo privado.

35

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Local preference Se utiliza cuando existe Multihomed en el sistema autónomo. Local preference es el segundo criterio de selección de ruta después de Weight, identifica cual es la mejor salida para salir de de nuestro sistema autónomo. El valor es propagado a los vecinos del sistema autónomo y debe ser aplicado en el router de borde. El valor más alto es preferido, y por defecto es 100. Ejemplo #route-map nombre permit 10 #set local-preference 200

 Se crea un mapa de ruta asignandole un nombre y un numero de secuencia.  Se asigna un valor de local preference, en este caso 200.

Dentro de la configuración de BGP se aplica el mapa de ruta hacia el vecino #Neighbor dirección ip route-map nombre del mapa out  Ingreso la dirección IP del vecino IBGP que se desea anunciarle las rutas con Local preference 200. Se puede aplicar IN ingresando la dirección del vecino EBGP para que todas las rutas aprendidas desde él, se anuncien con local preference 200. Se puede agregar en el mapa de ruta un MATCH address IP para asignarle una Access-list, la cual permitirá cambiar el local preference a redes especificas.

MED Se utiliza cuando existe Multihomed, para indicar al sistema autónomo fuera de nuestra red por cual de mis salidas prefiero que el tráfico externo entre. Por defecto este valor es 0, el valor más bajo es preferido y este comando se agrega dentro de nuestro sistema autónomo e influye en la decisión del sistema autónomo externo. Se aplica en el Router borde en modo configuración global: #Route-map nombre permit 10  Se debe crear route-map asignándole un nombre y un numero de secuencia. #set metric 50 Se Indica el valor del MED, en este caso 50. Se debe aplicar el mapa de ruta dentro de la configuración de BGP: #Neighbor dirección IP route-map nombre out  Se debe ingresar la dirección IP del vecino EBGP, luego el nombre del route-map y se aplica de salida.

36

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Balanceo de carga en Links EBGP Si disponemos de dos enlaces para salir de nuestra red, puede ocurrir que uno de ellos se sobrecargue de tráfico, y el otro permanezca con menor flujo. Lo ideal sería que el tráfico fuese 50% en cada enlace para aprovechar el ancho de banda contratado, y así también no generar un cuello de botella en una de las salidas. Una forma para lograr esto, es utilizando el atributo Local-preference, el cual nos permite definir que ruta es mejor para alcanzar el destino. El atributo Local preference es enviado a todos los vecinos IBGP y podemos definir cuál será el valor asignado para ciertos vecinos. En esta topología el tráfico entre el sistema autónomo 500 y 100 es enviado por los dos enlaces. El enlace de R3 posee una carga del 25% proveniente de la red 192.168.10.0/24 (R5), y el otro 75% provienen de las redes de R6 y R7. El objetivo es lograr que los usuarios de la red 192.168.20.0/24 utilicen el enlace de R3 para alcanzar las redes del sistema autónomo 500. Esto generaría una carga del 50% por cada enlace. Primero verificamos el camino que utiliza R7 para las redes del sistema autónomo 500. R7#show ip bgp BGP table version is 44, local router ID is 192.168.20.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network *>i172.16.1.0/24 *i *>i172.16.2.0/24 *i

37

Next Hop 172.16.10.6 172.16.10.2 172.16.10.6 172.16.10.2

Metric LocPrf Weight Path 0 100 0 500 i 0 100 0 500 i 0 100 0 500 i 0 100 0 500 i

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Identificamos que el camino tomado por R7 para alcanzar las redes 172.16.1.0/24 y 172.16.2.0/24 es por el Next Hop 172.16.10.2, es decir R1. El objetivo es lograr que el Next-hop para las redes aprendidas vía BGP sea R2. Para lograr esto ingresamos a R3 para que anuncie a R2 las rutas con un Local preference de 200. Esto permite que R2 sea el mejor camino al momento de la comparación de la mejor ruta. Configuración: 1) En R3 creamos una Access-list que permita las redes aprendidas desde R2. (Pueden permitirse todas las redes, lo que generará un cambio de local preference para todas y futuras redes anunciadas por R2). 2) Creamos un mapa de ruta que permita. Dentro del mapa de ruta configuramos un match con la Access list antes creada. 3) Seteamos Local-preference 200 para las redes que realicen match. 4) Configuramos el mapa de ruta que permita todo lo demás con un número de secuencia mayor. R3(config)#ACCESS-LIST 1 PERMIT 172.16.1.0 0.0.0.255 R3(config)#ACCESS-LIST 1 PERMIT 172.16.2.0 0.0.0.255 R3(config)# R3(config)#ROUTE-MAP BALANCEO permit 10 R3(config-route-map)#match ip address 1 R3(config-route-map)#set local-preference 200 R3(config-route-map)#ROUTE-MAP BALANCEO permit 20 R3(config-route-map)# R3(config-route-map)#router bgp 100 R3(config-router)#neighbor 192.168.0.17 route-map BALANCEO out

Reiniciamos todas las sesiones de BGP para probar las nuevas políticas aplicadas. R3#clear ip bgp *

38

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Finalmente en R7 revisamos con show ip bgp, verificando que las redes son alcanzadas vía R2 y que su local preference ahora es 200. R7#show ip bgp BGP table version is 36, local router ID is 192.168.20.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop * i172.16.1.0/24 172.16.10.2 *>i 172.16.10.6 * i172.16.2.0/24 172.16.10.2 *>i 172.16.10.6

Metric LocPrf Weight Path 0 100 0 500 i 0 200 0 500 i 0 100 0 500 i 0 200 0 500 i

Verificamos el flujo del tráfico con tracer: R7#tracer Protocol [ip]: Target IP address: 172.16.1.1 Source address: 192.168.20.1 Numeric display [n]: Type escape sequence to abort. Tracing the route to 172.16.1.1 1 192.168.0.18 92 msec 36 msec 80 msec 2 172.16.10.6 76 msec 192 msec 92 msec 3 172.16.0.2 56 msec 148 msec 76 msec Verificamos el Route-map BALANCEO: R3#show route-map BALANCEO route-map BALANCEO, permit, sequence 10 Match clauses: ip address (access-lists): 1 Set clauses: local-preference 200 Policy routing matches: 0 packets, 0 bytes route-map BALANCEO, permit, sequence 20 Match clauses: Set clauses: Policy routing matches: 0 packets, 0 bytes

39

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Comandos de verificación de BGP: Para la comprobación y resolución de problemas, utilizaremos la siguiente topología: La topología es del tipo Multihomed donde R4 – R1 son vecinos EBG, al igual que R5 – R2. EIGRP corre sobre los 3 routers del AS 65000. Las redes 10.0.0.4/30 y 10.0.0.8/30 son declaras en EIGRP.

Identificando atributos Para identificar los atributos de las rutas aprendidas vía BGP, utilizamos el comando show ip bgp. En el siguiente ejemplo podemos verificar los atributos: R3#show ip bgp BGP table version is 6, local router ID is 172.16.20.2 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network * i10.0.0.0/30 *>i R3#

Next Hop 10.0.0.10 10.0.0.6

Metric 0 0

LocPrf Weight Path 100 0 200 i 100 0 100 i

Se pueden identificar:

Identificar la mejor ruta:

Origin code Next-Hop Metrica Local Preference Weight AS-PATH

El signo > identifica cual es la mejor ruta cuando se posee más de un camino.

40

I= via comando network origin code ?= redistribucion origin code

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Comprobando mejor ruta El comando show ip bgp dirección_de_red nos permite identificar los valores de los atributos, para la sección de la mejor ruta, cuando existe más de un camino hacia el destino. A continuación veremos un ejemplo para la red 10.0.0.0 de la topología de ejemplo. R3#show ip bgp 10.0.0.0 BGP routing table entry for 10.0.0.0/30, version 6 Paths: (2 available, best #2, table Default-IP-Routing-Table) Flag: 0x820 Not advertised to any peer 200 10.0.0.10 (metric 307200) from 172.16.20.5 (172.16.20.5) Origin IGP, metric 0, localpref 100, valid, internal 100 10.0.0.6 (metric 307200) from 172.16.20.1 (172.16.20.1) Origin IGP, metric 0, localpref 100, valid, internal, best 1) Se debe seleccionar la ruta con mayor weigh. Como no ha sido modificado, permanece en 0 por defecto. Puede ser visualizado con el comando show ip bgp. Como ambos son iguales, pasamos al siguiente criterio. 2) Se selecciona la ruta con mayor local preference, en este caso ambos se encuentran por defecto (100), por lo tanto pasamos al siguiente criterio. 3) Se selecciona la ruta que fue configurada localmente vía Network o agregate address. En este caso no fue generada localmente, por lo tanto continuamos con el siguiente criterio. 4) Se prefiere la ruta con menor AS-PATH. En este caso, ambos poseen solo un As-PATH de largo ( AS100 para la primera ruta y AS200 para la segunda), por lo tanto continuamos con el siguiente criterio. 5) Se prefieren las rutas según Código origin: IGP
41

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Identificando problemas de autenticación: Utilizaremos la topología de ejemplo para identificar los problemas relacionados a la autenticación de BGP. Primero ingresaremos la configuración de R2, donde asignaremos como password cisco. R2(config)#router BGP 65000 R2(config-router)#neighbor 172.16.20.2 remote-as 65000 R2(config-router)#neighbor 172.16.20.2 password cisco Luego en R3 utilizaremos la password cisco1, la cual no coincide con la de R2 R3(config)#router BGP 100 R3(config-router)#neighbor 172.16.20.1 remote-as 65000 R3(config-router)#neighbor 172.16.20.1 password cisco1 R3(config-router)#neighbor 172.16.20.5 remote-as 65000 R3(config-router)#neighbor 172.16.20.5 password cisco1 En R1 no utilizaremos password, para identificar los problemas relacionados. R1(config)#router BGP 100 R1(config-router)#neighbor 172.16.20.6 remote-as 65000

Peer sin password asignada: Cuando no se encuentra ingresada una password se recibe el mensaje No MD5 digest. R3# *Mar 1 00:16:59.047: %TCP-6-BADAUTH: No MD5 digest from 172.16.20.1 (179) to 172.16.20.2(32583) (RST) *Mar 1 00:17:01.031: %TCP-6-BADAUTH: No MD5 digest from 172.16.20.1 (179) to 172.16.20.2(32583) (RST) Password mal asignada: Si configuramos una password incorrecta, obtenemos como resultado un Invalid MD5 digest, como se muestra en la imagen R3# *Mar 1 00:21:45.135: %TCP-6-BADAUTH: 172.16.20.5(18778) to 172.16.20.6(179) *Mar 1 00:21:47.139: %TCP-6-BADAUTH: 172.16.20.5(18778) to 172.16.20.6(179)

42

PROTOCOLO DE ENRUTAMIENTO BGP

Invalid

MD5

digest

from

Invalid

MD5

digest

from

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Errores de adyacencia Estados Idle: Es el estado inicial de una adyacencia de los neighbors BGP. En este estado el router busca un camino en la tabla IGP para alcanzar el vecino declarado. Connect: Esperando formar la sesión TCP. Active: El router se encuentra escuchando en su puerto, esperando la conexión con el peer. Si la sesión no logra realizarse, permanece en este estado. Si se logra establecer pasa al siguiente estado OpenSent: Router BGP espera un mensaje OPEN de su vecino OpenConfirm: Cuando recibe el mensaje OPEN, responde con un Keepalive Established: La negociación entre los vecinos a sido completada. Apagamos la interfaz que había generado adyacencia para identificar el estado en que permanece el neighbor. Se obtiene como resultado el estado ACTIVE. Entonces el router permanecerá en este estado, ―escuchando‖ en el puerto TCP a la espera de recibir un mensaje Open, para pasar al siguiente estado OpenSent.

Neighbor 172.16.20.1 172.16.20.5

V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 4 65000 56 55 4 0 0 00:52:15 1 4 65000 51 52 0 0 0 00:01:55 Active

Cuando un router permanece en estado Active significa que su vecino no puede alcanzar o conectarse con el router. Los peers BGP generan una sesión TCP para mantener la adyacencia, por lo tanto se debe verificar que no exista una ACL bloqueando el trafico TCP. Otra error común es mal asignar una dirección IP del vecino, o el sistema autónomo, lo que generara también el estado ACTIVE. El IDLE se genera cuando el router no posee una ruta a hacia el router destino, por lo tanto nunca podrá alcanzar el vecino.

43

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Generando adyacencia Utilizaremos debug ip bgp para verificar el inicio y adyacencia de los peer BGP. R1#debug ip bgp R1(config)#router bgp 200 R1(config-router)#neighbor 10.0.0.1 remote 100 *Mar 1 00:13:19.975: BGP: 10.0.0.1 went from Idle to Active *Mar 1 00:13:19.975: BGP: 10.0.0.1 open active delayed 30232ms (35000ms max, 28% jitter) *Mar 1 00:13:46.627: BGP: 10.0.0.1 passive open to 10.0.0.2 *Mar 1 00:13:46.627: BGP: 10.0.0.1 went from Active to Idle *Mar 1 00:13:46.627: BGP: 10.0.0.1 went from Idle to Connect *Mar 1 00:13:46.627: BGP: 10.0.0.1 rcv message type 1, length (excl. header) 26 *Mar 1 00:13:46.627: BGP: 10.0.0.1 rcv OPEN, version 4, holdtime 180 seconds *Mar 1 00:13:46.627: BGP: 10.0.0.1 went from Connect to OpenSent *Mar 1 00:13:46.627: BGP: 10.0.0.1 sending OPEN, version 4, my as: 200, holdtime 180 seconds *Mar 1 00:13:46.627: BGP: 10.0.0.1 rcv OPEN w/ OPTION parameter len: 16 *Mar 1 00:13:46.627: BGP: 10.0.0.1 rcvd OPEN w/ optional parameter type 2 (Capability) len 6 *Mar 1 00:13:46.627: BGP: 10.0.0.1 OPEN has CAPABILITY code: 1, length 4 *Mar 1 00:13:46.627: BGP: 10.0.0.1 OPEN has MP_EXT CAP for afi/safi: 1/1 *Mar 1 00:13:46.627: BGP: 10.0.0.1 rcvd OPEN w/ optional parameter type 2 (Capability) len 2 *Mar 1 00:13:46.627: BGP: 10.0.0.1 OPEN has CAPABILITY code: 128, length 0 *Mar 1 00:13:46.627: BGP: 10.0.0.1 OPEN has ROUTE-REFRESH capability(old) for all address-families *Mar 1 00:13:46.627: BGP: 10.0.0.1 rcvd OPEN w/ optional parameter type 2 (Capability) len 2 *Mar 1 00:13:46.627: BGP: 10.0.0.1 OPEN has CAPABILITY code: 2, length 0 *Mar 1 00:13:46.627: BGP: 10.0.0.1 OPEN has ROUTE-REFRESH capability(new) for all address-families BGP: 10.0.0.1 rcvd OPEN w/ remote AS 100 *Mar 1 00:13:46.627: BGP: 10.0.0.1 went from OpenSent to OpenConfirm *Mar 1 00:13:46.627: BGP: 10.0.0.1 send message type 1, length (incl. header) 45 *Mar 1 00:13:46.655: BGP: 10.0.0.1 went from OpenConfirm to Established *Mar 1 00:13:46.655: %BGP-5-ADJCHANGE: neighbor 10.0.0.1 Up Podemos identificar como son enviados los mensajes entre los peers bgp y cómo va cambiando de estados, hasta que genera la adyacencia con su vecino.

44

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING 2014 Problemas con route-map Puede ocurrir que introduzcamos mal el nombre de un route-map, o que no exista. Esto provocará un bloqueo de todas las rutas aprendidas desde el vecino. Ejemplo: Revisamos las redes conocidas por R3. R3#show ip bgp BGP table version is 9, local router ID is 172.16.25.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop * i10.0.0.0/30 10.0.0.10 *>i 10.0.0.6 *>i100.0.0.0/24 10.0.0.6 r>i172.16.23.0/24 172.16.20.1 r>i172.16.24.0/24 172.16.20.5 *> 172.16.25.0/24 0.0.0.0 *>i200.0.0.0 10.0.0.10

Metric LocPrf Weight Path 0 100 0 200 i 0 100 0 100 i 0 100 0 100 i 0 100 0 i 0 100 0 i 0 32768 i 0 100 0 200 i

Asignamos el mapa de ruta RED al vecino ―R3‖, este route map no existe, por lo tanto no se permitirá ninguna red. R2(config)#router bgp 65000 R2(config-router)#neighbor 172.16.20.2 route-map REDES out R2(config-router)#do clear ip bgp * out Ahora R3 no recibe las redes, por lo tanto no conoce ninguna red desde R2. R3#show ip bgp BGP table version is 12, local router ID is 172.16.25.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network *>i10.0.0.0/30 r>i172.16.24.0/24 *> 172.16.25.0/24 *>i200.0.0.0

45

Next Hop 10.0.0.10 172.16.20.5 0.0.0.0 10.0.0.10

Metric LocPrf Weight Path 0 100 0 200 i 0 100 0 i 0 32768 i 0 100 0 200 i

PROTOCOLO DE ENRUTAMIENTO BGP

Juan Zambrano Teleccna.cl

YO SÉ NETWORKING BGP.pdf

Page 2 of 46. YO SÉ NETWORKING 2014. 1. PROTOCOLO DE ENRUTAMIENTO BGP Juan Zambrano. Teleccna.cl. ÍNDICE. Proyecto YO SÉ NETWORKING.

988KB Sizes 3 Downloads 61 Views

Recommend Documents

biography-yo-yo-honey-singh.pdf
43551 -- 48926 -- -- -- -- -- -- -- 40895 -- 29657 -- 40875 54352 -- -- -- -- --. Whoops! There was a problem loading this page. Retrying... biography-yo-yo-honey-singh.pdf. biography-yo-yo-honey-singh.pdf. Open. Extract. Open with. Sign In. Main men

biography-yo-yo-honey-singh.pdf
biography-yo-yo-honey-singh.pdf. biography-yo-yo-honey-singh.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying biography-yo-yo-honey-singh.pdf ...

yo yo honey singh new 2013 mp3 free.pdf
Page 1 of 7. Bohol Profile. Bohol. Basic Facts. Geographic Location Bohol is nestled securely at the heart of the Central. Visayas Region, between southeast of Cebu and southwest. of Leyte. Located centrally in the Philippine Archipelago, specificall

yo yo honey singh hd video.pdf
yo yo honey singh hd video.pdf. yo yo honey singh hd video.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying yo yo honey singh hd video.pdf.

Yo Robot.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Yo Robot.pdf.

YO TE DIRE.pdf
32. a. d. d. jz n. k k k k k k. k. s. k k. s. k k k i k. n n k. b. d. d. k. k. k. k. k. k. k. k. k. k. k. k. Re M. k. k. k. k. k. k. k. k. 4 3 1 1 4. 37. a. e. ef. i j dj i j n k. i. b. e. ef. Re m. k.

Clap yo' hands.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Clap yo' hands.

Ficha YO DANIEL BLAKE.pdf
Sign in. Loading… Whoops! There was a problem loading more pages. Retrying... Whoops! There was a problem previewing this document. Retrying.

Yo soy Malala - Malala Yousafzai.pdf
... nos hace creer en el poder de la voz de una persona para. cambiar el mundo. Page 3 of 262. Main menu. Displaying Yo soy Malala - Malala Yousafzai.pdf.

3 - yo y cambio.pdf
Page 1 of 1. presente - verbos irregulares. Verbos que tienen un la forma "yo" irregular y un cambio vocálico. tener. tengo. tienes. tiene. tenemos. tenéis. tienen.

Isaac Asimov - Yo Robot.pdf
(Véase "El alma del robot", de B. J. Bayley). Pero estas. cuestiones se resuelven en "Yo, robot" en el mbito de las tres leyes fundamentales. de la robótica, concebidas por el mismo Asimov, y que no dejan de proponer. extraordinarias paradojas, que

No soy yo, nena.pdf
Moderadora. Traducción. Corrección. Revisión & Diseño. Page 3 of 318. No soy yo, nena.pdf. No soy yo, nena.pdf. Open. Extract. Open with. Sign In. Main menu.

Doing Mathematics with Yo
goals for mathematics education. This goal ... This article presents resources that will enable parents to fulfill their ... involved in their children's mathematical education. ... Although more expensive and requiring extra equipment, technology.

Yo!Bots plus iPods.pdf
London Connected Learning Centre Email: [email protected]. Tel: 0207 720 7514. Another option is to use the arrow keys on your computer. keyboard.

Yo Robot - Isaac Asimov.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Yo Robot - Isaac ...

LA LAGUNA QUE YO QUIERO.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. LA LAGUNA ...

PDF Download Knots in My Yo-Yo String: The ...
Autobiography of a Kid Full eBook Online ... edge between childhood and full-fledged adolescence" (The Washington Post), Newbery medalist Jerry Spinelli has penned his early autobiography with all the warmth, humor, and drama of his ... I Am Malala:

Yo soy Malala - Malala Yousafzai.pdf
cambiar el mundo. Page 3 of 262. Yo soy Malala - Malala Yousafzai.pdf. Yo soy Malala - Malala Yousafzai.pdf. Open. Extract. Open with. Sign In. Main menu.