Mostrando las entradas con la etiqueta BGP. Mostrar todas las entradas
Mostrando las entradas con la etiqueta BGP. Mostrar todas las entradas

martes, 10 de marzo de 2015

Configuración de MPLS parte 4, ruteo entre ISP (PE) y cliente (CE)

Ya que hicimos las VRF para cada cliente y sus correspondientes etiquetas, así como la comunicación entre los diferentes PE, haremos la comunicación de las rutas entre el cliente y el ISP, y la correspondiente redistribución hacia mBGP a fin de propagar las rutas entre los sitios del cliente.

Ambos clientes tienen las mismas redes a fin de demostrar que las VRF hacen posible el escenario entre clientes; por lo que utilizaremos loopback interfaces diferentes en cada router y las asignaremos  a diferentes protocolos de ruteo, probando así que existe la separación.


Desde del lado del cliente no hay nada especial:

blue1#sh runn | beg router
router eigrp 10
 network 10.11.0.0 0.0.0.7
 network 11.0.0.1 0.0.0.0
!
router ospf 10
 network 10.11.0.0 0.0.0.7 area 0
 network 11.0.0.2 0.0.0.0 area 1
!
router rip
 version 2
 passive-interface default
 no passive-interface Ethernet0/0
 no passive-interface Loopback103
 network 10.0.0.0
 network 11.0.0.0
 no auto-summary

lunes, 9 de marzo de 2015

Configuración de MPLS parte 3, las VRF

Comenzaremos con una breve explicación de qué es una VRF, y como las identificamos.
Una VRF (virtual routing and forwarding) es una instancia virtual y separada de la instancia global de ruteo en el dispositivo; es decir, es casi como tener un segundo router corriendo sus propios procesos de ruteo, independientes de cualquier otro presente en el dispositivo.

El uso más común y que simularemos en el ejemplo, es el que los proveedores de servicio utilizan para conectar a sus clientes con MPLS, configurando redes privadas virtuales que separan el tráfico de los clientes en instancias separadas de los demás clientes por medio de las etiquetas de ruteo. los routers que tenemos dentro del ISP les llamaremos P (provider), a los del borde de la red del ISP les llamaremos PE (provider edge) a los del cliente CE (customer edge)

Esta separación se logra con la configuración de la VRF primero, declarando su nombre, y después utilizando etiquetas para poder separar esa información de los demás procesos. Dichas etiquetas son muy parecidas a las que utilizamos en LDP para MPLS, pero en este ejemplo utilizaremos el formato "extendido". Dichas etiquetas son utilizadas en el encabezado de las rutas, por lo que cualquier vecino de mBGP que reciba dichas rutas etiquetadas podrá instalarlas en sus propias VRF conforme a lo que se le indica en la configuración.

Entre otros beneficios, tener una VRF nos permite la duplicación de direcciones IP entre diferentes clientes, es decir, podríamos tener a dos clientes diferentes utilizando las redes 10.0.0.0/16 sin problemas, ya que las rutas se procesas basadas en las etiquetas.

Basados en estas etiquetas indicaremos cuál es la que identifica localmente a nuestra VRF y compartiremos dicha información con nuestro vecino de mBGP , comunicando así que por ejemplo, la VRF X está dentificada por el Route Distinguisher Y:Z, y que necesitamos que exporte esa información hacia mBGP y que desde ahí importe las etiquetas que necesitamos para comunicar dos sitios de un mismo cliente. También agregaremos una familia de direcciones a BGP que comunique el ruteo entre ambos PE para la VRF de cada cliente.

Cuando activamos una nueva instancia o VRF, el router puede ejecutar sus propios procesos de BGP, OSPF, RIP, ISIS, etc. y los utilizaremos para intercambiar rutas entre el cliente y el ISP, logrando que el cliente nos entregue la información de sus redes y nosotros la llevemos a los demás sitios del mismo cliente, estableciendo así una red privada con comunicación basada en MPLS. También indicaremos en cada interface a que VRF queremos que pertenezca.

IMPORTANTE: cuando asignas una interface a una VRF, se borra la configuración de la interface y deberemos volver a indicar la IP y demás características deseadas en dicho puerto.



Los routers P (2, 3 y 4) no requieren configuración adicional.

Ejemplo de los routers PE con dos clientes, las compañías blue y green que tienen un sitio cada una conectados ambos al PE 1, y dos sitios conectados al PE2:

viernes, 6 de marzo de 2015

Configuración de MPLS parte 2, mBGP

Después de que hemos configurado el intercambio de etiquetas de MPLS, sigue activar mBGP a fin de poder intercambiar información de ruteo entre diferentes sistemas autónomos, dándonos la funcionalidad de poder comunicar dichos sistemas con cierta privacidad y aislando el tráfico en diferentes instancias, comenzando así con el servicio de una red privada virtual o VPN.

Lo primero es activar BGP en los routers 1 y 5, establecer su vecindad y configurar el tipo de instancia que queremos utilizar, en este caso VPNv4:

R1
router bgp 99
 bgp log-neighbor-changes
 neighbor 5.5.5.5 remote-as 99
 neighbor 5.5.5.5 update-source Loopback1
 !
 address-family vpnv4
  neighbor 5.5.5.5 activate
  neighbor 5.5.5.5 send-community extended
 exit-address-family

R5
router bgp 99
 bgp log-neighbor-changes
 neighbor 1.1.1.1 remote-as 99
 neighbor 1.1.1.1 update-source Loopback1
 !
 address-family vpnv4
  neighbor 1.1.1.1 activate
  neighbor 1.1.1.1 send-community extended
 exit-address-family

sábado, 10 de abril de 2010

¿Cómo funciona el balanceo de carga?

El load balancing es una función del IOS, y está disponible en todas las plataformas de ruteo. Es parte del proceso de forwarding y se activa autmáticamente si la tabla de ruteo tiene trayectorias múltiples hacia el destino. Se basa en los protocolos estándar de ruteo, tales como RIP, RIPv2,EIGRP, IGRP, OSPF; o se deriva de las rutas estáticas y los mecanismos de reenvío de paquetes configurados. Le permite a un router usar múltiples caminos a un destino cuando reenvía paquetes.

Cuando un router conoce múltiples rutas a un destino por medio de procesos de ruteo, instala la ruta con la distancia administrativa más baja en la tabla de ruteo.
Distancias Administrativas por Default
Connected:           0
Static:                  1
eBGP:                 20
EIGRP (internal): 90
IGRP:               100
OSPF:              110
IS-IS:               115
RIP:                 120
EIGRP (external): 170
iBGP:               200
EIGRP summary route: 5

A veces el router debe seleccionar una ruta entre vairas que aprendió por el mismo proceso con la misma distancia administrativa. En ese caso, escoge cual tiene el menor costo hacia el destino. Cada proceso de ruteo calcula sus costos diferente y a veces se requiere manipularlos para lograr el balanceo.

Si el router recibe varias trayectorias con la misma distancia administrativa y costo hacia un destino, el balanceo de cargas puede ocurrir. El número de trayectorias usadas está limitado por el número de entradas que el protocolo de ruteo pone en la tabla de ruteo. Cuatro entradas en el default in IOS para la mayoría de los protocolos de ruteo, a excepción de BGP, donde el default es una entrada. El máximo a configurar es 6.

Los procesos de ruteo de IGRP e EIGRP también soportan trayectorias múltiples balanceo de cargas con costos distintos. Usamos el comando maximum-paths para determinar el número de rutas que puede ser instalado basado en el valor configurado en el protocolo. Si fijamos la tabla de ruteo a una entrada, se desactiva el balanceo de cargas. El proceso de balanceo entre trayectorias con costos distintos se llama varianza (variance)

Podemos usar el comando show ip route para encontrar rutas con costos iguales; en este ejemplo su salida tiene dos bloques, cada uno es una ruta. El asterisco corresponde a la ruta activa que es usada para tráfico nuevo, es decir, un único paquete o un flujo entero de datos, dependiendo del tipo de conmutación configurada.
  • Para el balanceo por process-switching, el balanceo de cargas está basado por paquete y el asterisco señala la interfase sobre la que se enviará el próximo paquete.
  • Para el balanceo por fast-switching, que es efectuado basado en los destino, el asterisco señala la interfase sobre la que se enviará el siguiente flujo de datos basados en su destino.
La posición del asterisco se mantiene rotando entre las trayectorias de costo igual cada vez que un paquete o flujo es enviado.
M2515-B# show ip route 1.0.0.0
Routing entry for 1.0.0.0/8
Known via "rip", distance 120, metric 1
Redistributing via rip
Advertised by rip (self originated)
Last update from 192.168.75.7 on Serial1, 00:00:00 ago
Routing Descriptor Blocks:
* 192.168.57.7, from 192.168.57.7, 00:00:18 ago, via Serial0
Route metric is 1, traffic share count is 1
192.168.75.7, from 192.168.75.7, 00:00:00 ago, via Serial1
Route metric is 1, traffic share count is 1

Podemos configurar el balanceo para que trabaje por destino o por paquete.