En este laboratorio vamos a explicar el funcionamiento de una red básica
MPLS, tanto el enrutamiento en la backbone a través de etiquetas, como
la “formación” de redes virtuales VPNs en los routers de
acceso a la red para que la backbone IP pueda ser compartida por
varios clientes sin que por ello la seguridad de la red se vea
afectada. Los PE’s intercambiaran información de las VPNs
conectadas a través de MP-BGP.
Este es el esquema
de la red implementada (con equipos Cisco) en el Laboratorio:
Redes virtuales en los PE’s
En los routers de acceso a la red MPLS(PE) cada cliente pertenecerá a una red virtual y tendrá una tabla de rutas propia en la que aparecerán las IP`s del CE conectados directamente y de aquellos CE’s remotos pertenecientes a la misma VPN. Estas ultimas han sido importadas por el PE a través de la sesión BGP con el PE al que conectan las localidades remotas.
Sesión BGP
Los PE’s de la red tiene una conexión MP-BGP a través de la cual se transmite información sobre las IP’s de los clientes conectados a ellos. Una sesión MP-BGP permite el manejo de direcciones RD : IPV4 . Donde RD= AS + integer para la VPN.
Nota: (el integer puede ser diferente para la misma VPN en diferentes PEs)
A la hora de definir una VPN se especifica el atributo asignado a las direcciones exportadas desde la tabla de enrutamiento de dicha VPN y el atributo que determinara las direcciones importadas a la tabla de enrutamiento (VRF) de cada VPN. (es un atributo BGP-extended)
En la definición del BGP del router se añade la family vpnv4 que permitirá las direcciones con formato MP-BGP
router bgp 100
no synchronization
neighbor 10.20.10.6 remote-as 100
neighbor 10.20.10.6 update-source Loopback0
no auto-summary
!
address-family ipv4 vrf customer_a
redistribute connected
redistribute static
no auto-summary
no synchronization
exit-address-family
!
address-family vpnv4
neighbor 10.20.10.6 activate
neighbor 10.20.10.6 send-community both
no auto-summary
exit-address-family
Estas son las rutas exportadas/importadas para la VPN customer_a. Las importadas tienen como siguiente next-hop la dirección de loopback del PE remoto. Donde 100 es el AS y 1000 el número asignado a la VPN
Importar rutas a la tabla de rutas de cada VPN
La definición de la VRF determinará que rutas se importaran dentro de la tabla local de enrutamiento para dicha VRF. Para ello consultara el atributo extended-community.
ip vrf customer_a
rd 100:1000
route-target export 100:999
route-target import 100:2000
En nuestro caso se importaran aquellas con el atributo igual a 2000. En el PE remoto sería a la inversa.
Exportar rutas a la VRF de una VPN
Para incluir las tablas de enrutamiento dentro del mecanismo BGP se realiza la siguiente definición: redistribute connected
router bgp 100
no synchronization
neighbor 10.20.10.6 remote-as 100
neighbor 10.20.10.6 update-source Loopback0
no auto-summary
!
address-family ipv4 vrf customer_a
redistribute connected
redistribute static
no auto-summary
no synchronization
La definición de la VRF también determinara el atributo con el que marcaremos la exportación de dichas rutas
ip vrf customer_a
rd 100:1000
route-target export 100:999
route-target import 100:2000
Así tenemos que nuestra VRF “marca” e “ importa":
Además en cada interfaz de conexión al cliente marcaremos la VPN a la que pertenece y definiremos una ruta hacia su LAN a través de ese interfaz para esa VPN
interface Serial1
ip vrf forwarding customer_a
ip address 10.1.1.41 255.255.255.252
encapsulation ppp
..............
ip route vrf customer_a 192.168.1.0 255.255.255.0 Serial1
Esta es la información exportada e importada para la VRF customer_a (RD:100:1000) (en rojo
información añadida después de añadir redistribute connected):
A la cual se le han asignado las etiquetas locales:
Siendo la tabla de rutas:
Para comprobar el valor del RT de una determinada dirección IP:
Conclusión: Hay que diferenciar entre el termino RD que hace “único” y permite en la red diferenciar el addressing de cada VPN y el de RT que indica el atributo con el que se marcan las rutas exportadas para que el PE remoto filtre que rutas incluir en la tabla de rutas (VRF) de una determinada VPN.
Ingress-Egress Port
Una vez recibido un paquete de un CE y descubrir que el siguiente hop es la L0 del PE remoto, se consultará la tabla de rutas “convencional” para conocer como llegar a ella. En ese momento se iniciará el mecanismo de intercambio de etiquetas (egress port)
Nota: Observar que las direcciones IP de la WAN hacia el CE no aparecen
Por el contrario si se recibe un paquete (egress port) una vez consultada la etiqueta interior, y determinada la VPN según su valor, su tabla de rutas VRF nos indicara el interfaz al que rutear el paquete (interfaz al que está conectado el CE).
Configuraciones:
hostname HAWAII
!
interface Ethernet0
ip address 192.168.1.1 255.255.255.0
no ip route-cache
no ip mroute-cache
!
interface Serial0
ip address 10.1.1.42 255.255.255.252
encapsulation ppp
no ip route-cache
no ip mroute-cache
clockrate 2000000
!
ip classless
ip route 0.0.0.0 0.0.0.0 Serial0
------------------------------------------------
hostname MAURICIO
!
ip vrf customer_a
rd 100:1000
route-target export 100:999
route-target import 100:2000
!
ip cef
!
interface Loopback0
ip address 10.20.10.5 255.255.255.255
!
interface Serial0
ip address 10.1.1.18 255.255.255.252
encapsulation ppp
tag-switching ip
clockrate 2000000
!
interface Serial1
ip vrf forwarding customer_a
ip address 10.1.1.41 255.255.255.252
encapsulation ppp
!
router ospf 100
log-adjacency-changes
network 10.1.1.0 0.0.0.255 area 0
network 10.20.10.0 0.0.0.255 area 0
!
router bgp 100
no synchronization
neighbor 10.20.10.6 remote-as 100
neighbor 10.20.10.6 update-source Loopback0
no auto-summary
!
address-family ipv4 vrf customer_a
redistribute connected
redistribute static
no auto-summary
no synchronization
exit-address-family
!
address-family vpnv4
neighbor 10.20.10.6 activate
neighbor 10.20.10.6 send-community both
no auto-summary
exit-address-family
!
ip classless
ip route vrf customer_a 192.168.1.0 255.255.255.0 Serial1
------------------------------------------------
hostname TONGA
!
ip subnet-zero
!
ip cef
!
interface Loopback0
ip address 10.20.10.1 255.255.255.255
!
interface Serial0
ip address 10.1.1.5 255.255.255.252
encapsulation ppp
tag-switching ip
clockrate 2000000
!
interface Serial1
ip address 10.1.1.17 255.255.255.252
encapsulation ppp
tag-switching ip
!
router ospf 100
no log-adjacency-changes
redistribute static
network 10.1.1.0 0.0.0.255 area 0
network 10.20.10.0 0.0.0.255 area 0
!
no ip classless
-----------------------------------------------
hostname FIYI
!
ip subnet-zero
!
ip vrf customer_a
rd 100:1000
route-target export 100:2000
route-target import 100:999
!
ip cef
!
interface Loopback0
ip address 10.20.10.6 255.255.255.255
!
interface Serial0
ip vrf forwarding customer_a
ip address 10.1.1.33 255.255.255.252
encapsulation ppp
clockrate 2000000
!
interface Serial1
ip address 10.1.1.22 255.255.255.252
encapsulation ppp
tag-switching ip
!
interface FastEthernet0
ip address 135.76.35.252 255.255.255.0
!
router ospf 100
log-adjacency-changes
network 10.1.1.0 0.0.0.255 area 0
network 10.20.10.0 0.0.0.255 area 0
!
router bgp 100
no synchronization
neighbor 10.20.10.5 remote-as 100
neighbor 10.20.10.5 update-source Loopback0
no auto-summary
!
address-family ipv4 vrf customer_a
redistribute connected
redistribute static
no auto-summary
no synchronization
exit-address-family
!
address-family vpnv4
neighbor 10.20.10.5 activate
neighbor 10.20.10.5 send-community both
no auto-summary
exit-address-family
!
ip classless
ip route vrf customer_a 192.168.2.0 255.255.255.0 Serial0
---------------------------------------------------
hostname daganzo
!
interface Ethernet0
ip address 192.168.2.1 255.255.255.0
!
interface Serial1
ip address 10.1.1.34 255.255.255.252
encapsulation ppp
!
ip classless
ip route 0.0.0.0 0.0.0.0 Serial1
(Todos los comandos y configuraciones de este laboratorio son de routers Cisco)
Genial. Y muy completa
ResponderEliminarBuenas estoy intentando simular con GNS3 el esta práctica de la laboratorio pero no encuentro la configuración del router BORA BORA, te agradecería la info para poder simularlo
ResponderEliminarUn saludo y gracias por adelantado
Hola, sería similar a la del otro P:
ResponderEliminarip subnet-zero
!
ip cef
!
interface Loopback0
ip address 10.20.10.3 255.255.255.255
!
interface Serial0
ip address 10.1.1.6 255.255.255.252
encapsulation ppp
tag-switching ip
clockrate 2000000
!
interface Serial1
ip address 10.1.1.21 255.255.255.252
encapsulation ppp
tag-switching ip
!
router ospf 100
no log-adjacency-changes
redistribute static
network 10.1.1.0 0.0.0.255 area 0
network 10.20.10.0 0.0.0.255 area 0
!
no ip classless