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: