Este ejemplo de configuración muestra una Red Privada Virtual (VPN) de Multiprotocol Label Switching (MPLS) cuando Routing Information Protocol (RIP) está presente del lado del cliente.
La función VPN, cuando se utiliza con MPLS, permite que varios sitios se interconecten de forma transparente a través de la red de un proveedor de servicios. Una red proveedora de servicios puede ofrecer soporte a varias VPN IP diferentes Cada VPN IP aparece como una red privada, separada de todas las demás redes. Cada sitio en una VPN envía paquetes IP a otros sitios en la misma VPN.
Cada VPN está asociada con uno o más casos de reenvío o ruteo VPN (VRF). Un VRF consta de una tabla de IP Routing, una tabla de Cisco Express Forwarding (CEF) derivada y un conjunto de interfaces que utilizan la tabla de reenvío.
El router mantiene un ruteo separado y una tabla CEF para cada VRF. Esto evita que la información se envíe fuera de la VPN y permite que la misma subred se utilice en varias VPN sin causar problemas de dirección IP duplicada.
El router que utiliza el Border Gateway Protocol (BGP) distribuye la información de ruteo VPN utilizando las comunidades extendidas BGP.
Para obtener más información sobre la propagación de actualizaciones a través de una VPN, consulte las secciones Comunidades de Destino de Ruta VPN, Distribución BGP de Información de Ruteo VPN y Reenvío MPLS en Redes Privadas Virtuales MPLS.
No hay requisitos previos específicos para este documento.
Desarrollamos y probamos esta configuración usando las siguientes versiones de software y hardware:
Routers PE: La funcionalidad de MPLS VPN reside en los routers PE. Utilice Feature Navigator II (sólo clientes registrados) para determinar qué combinaciones de hardware y software puede utilizar.
Routers CE: Utilice cualquier router capaz de intercambiar información de ruteo con su router PE.
Routers P y switches: En este documento, se utilizaron switches ATM como MSR, BPX y MGX. Sin embargo, debido a que el documento se centra en la función MPLS VPN, también podríamos haber utilizado MPLS basado en tramas en el núcleo con routers, como el Cisco 12000.
La información que se presenta en este documento se originó a partir de dispositivos dentro de un ambiente de laboratorio específico. All of the devices used in this document started with a cleared (default) configuration. Si la red está funcionando, asegúrese de haber comprendido el impacto que puede tener un comando antes de ejecutarlo.
Configuramos una estructura básica MPLS ATM estándar mediante el área 0 de OSPF (Open Shortest Path First, ruta de acceso más corta) como protocolo de gateway interior (IGP). Configuramos dos VPN diferentes usando esta estructura básica. La primera VPN utiliza RIP como su protocolo de routing de borde del cliente a extremo del proveedor (CE-PE); la otra VPN utiliza BGP como su protocolo de ruteo PE-CE. Configuramos varios loopback y rutas estáticas en los routers CE para simular la presencia de otros routers y redes.
Nota: BGP debe utilizarse como el IGP VPN entre routers PE, ya que el uso de comunidades extendidas BGP es la única manera de transportar información de ruteo para la VPN entre los routers PE.
Nota: Se utilizó una red ATM como red de estructura básica para realizar esta configuración. Esta configuración se aplica a los protocolos ATM (y otros). Los routers PE deben poder comunicarse entre sí mediante la red MPLS para que la configuración VPN funcione.
Las letras que aparecen a continuación representan los distintos tipos de routers y switches usados:
P: Router de núcleo del proveedor
PE: Router de borde del proveedor
CE: Router de borde del cliente
C: Router del cliente
En el diagrama siguiente se muestra una configuración típica que ilustra estas convenciones:
Para obtener más información sobre las convenciones del documento, consulte Convenciones de Consejos Técnicos de Cisco.
En esta sección encontrará la información para configurar las funciones descritas en este documento. La documentación de Cisco IOS que se encuentra en Redes Privadas Virtuales MPLS también describe este procedimiento de configuración.
Nota: Para encontrar información adicional sobre los comandos usados en este documento, utilice la herramienta de búsqueda de comandos de IOS (sólo clientes registrados)
Este documento utiliza la instalación de red que se muestra en el siguiente diagrama.
Los siguientes pasos le ayudarán a configurar correctamente.
Habilite el comando ip cef. Si utiliza un Cisco 7500 Router, asegúrese de que el comando ip cef distributed esté habilitado, cuando esté disponible, para mejorar el rendimiento en el PE, una vez que se configura MPLS.
Cree un VRF para cada VPN usando el ip vrf [ruteo VPN comando | forwarding instance name]. Al crear los VRF, asegúrese de:
Especifique el discriminador de rutas correcto utilizado para esa VPN mediante el siguiente comando. El discriminador se utiliza para extender la dirección IP y le permite identificar a qué VPN pertenece.
rd [VPN route distinguisher]
Configure las propiedades de importación y exportación para las comunidades extendidas BGP usando el siguiente comando. Estas propiedades se utilizan para filtrar el proceso de importación y exportación.
route-target {export | import | both} [target VPN extended community]
Configure los detalles de reenvío para las respectivas interfaces usando el comando ip vrf forwarding [table name] y recuerde configurar la dirección IP después.
Según el protocolo de ruteo PE-CE utilizado, realice una o varias de las siguientes acciones:
Configure las rutas estáticas de la siguiente manera:
ip route vrf vrf-name prefix mask [next-hop-address] [interface {interface-number}]
Configure el RIP con el siguiente comando:
address-family ipv4 vrf [VPN routing | forwarding instance name]
Una vez que haya completado uno o ambos de los pasos anteriores, ingrese los comandos de configuración RIP normales.
Nota: Estos comandos se aplican solamente a las interfaces de reenvío del VRF actual. Vuelva a distribuir el BGP correcto en RIP y recuerde especificar la métrica utilizada.
Declare la información del vecino BGP.
Configure el OSPF utilizando el comando del nuevo IOS:
router ospf process-id vrf [VPN routing | forwarding instance name]
Nota: Este comando se aplica solamente a las interfaces de reenvío para el VRF actual. Redistribuya la información de ruteo BGP correcta en OSPF y especifique la métrica utilizada. Una vez que se completa el proceso OSPF a un VRF, incluso si el proceso OSPF no se especifica en la línea de comandos, este ID de proceso siempre se utiliza para este VRF en particular.
Configure BGO entre los routers PE. Existen diversas maneras de configurar BGP, por ejemplo, usando el reflector de ruta o los métodos de confederación. El método que se muestra aquí es la configuración de vecino directo. Es la más sencilla y la menos escalable.
Declare los diferentes vecinos.
Ingrese el address-family ipv4 vrf [ruteo VPN Comando | forwarding instance name] para cada VPN presente en este router PE. Realice uno o más de los siguientes pasos, según sea necesario:
Vuelva a distribuir la información de ruteo estático.
Redistribuya la información de ruteo RIP.
‘Vuelva a distribuir la información de ruteo de OSPF.’
Active BGP de vecindad con los routers CE.
Ingrese el modo address-family vpnv4 y:
Activar los vecinos.
Especifique que debe usarse la comunidad extendida. Esto es obligatorio.
En la configuración de Alcalzaba, las líneas específicas de la configuración de VPN se muestran en negrita.
Alcazaba |
---|
! ip vrf vrf101 rd 1:101 route-target export 1:101 route-target import 1:101 ! ip cef ! interface Loopback0 ip address 223.0.0.3 255.255.255.255 ! interface Ethernet1/1 ip vrf forwarding vrf101 ip address 150.150.0.1 255.255.255.0 ! interface ATM3/0 no ip address no ip mroute-cache no ATM ilmi-keepalive PVC qsaal 0/5 qsaal PVC ilmi 0/16 ilmi ! ! interface ATM3/0.1 tag-switching ip address 10.0.0.17 255.255.255.252 tag-switching ATM vpi 2-4 tag-switching ip ! interface ATM4/0 no ip address no ATM ilmi-keepalive ! interface ATM4/0.1 tag-switching ip address 10.0.0.13 255.255.255.252 tag-switching ATM vpi 2-4 tag-switching ip ! router ospf 1 network 10.0.0.0 0.0.0.255 area 0 network 223.0.0.3 0.0.0.0 area 0 ! router rip version 2 ! address-family ipv4 vrf vrf101 version 2 redistribute bgp 1 metric 0 network 150.150.0.0 no auto-summary exit-address-family ! router bgp 1 no synchronization neighbor 125.2.2.2 remote-as 1 neighbor 125.2.2.2 update-source Loopback0 neighbor 223.0.0.21 remote-as 1 neighbor 223.0.0.21 update-source Loopback0 no auto-summary ! address-family ipv4 vrf vrf101 redistribute rip no auto-summary no synchronization exit-address-family ! address-family vpnv4 neighbor 125.2.2.2 activate neighbor 125.2.2.2 send-community extended neighbor 223.0.0.21 activate neighbor 223.0.0.21 send-community extended no auto-summary exit-address-family ! |
Kozel |
---|
! ip vrf vrf101 rd 1:101 route-target export 1:101 route-target import 1:101 ! ip cef ! interface Loopback0 ip address 223.0.0.21 255.255.255.255 ! interface Ethernet1/1 ip vrf forwarding vrf101 ip address 200.200.0.1 255.255.255.0 ! interface ATM4/0 no ip address no ATM scrambling cell-payload no ATM ilmi-keepalive PVC qsaal 0/5 qsaal PVC ilmi 0/16 ilmi ! interface ATM4/0.1 tag-switching ip address 10.0.0.6 255.255.255.252 tag-switching ATM vpi 2-4 tag-switching ip ! router ospf 1 log-adjacency-changes network 10.0.0.0 0.0.0.255 area 0 network 223.0.0.21 0.0.0.0 area 0 ! router rip version 2 ! address-family ipv4 vrf vrf101 version 2 redistribute bgp 1 metric 1 network 200.200.0.0 no auto-summary exit-address-family ! router bgp 1 no synchronization neighbor 125.2.2.2 remote-as 1 neighbor 125.2.2.2 update-source Loopback0 neighbor 223.0.0.3 remote-as 1 neighbor 223.0.0.3 update-source Loopback0 no auto-summary ! address-family ipv4 vrf vrf101 redistribute rip no auto-summary no synchronization exit-address-family ! address-family vpnv4 neighbor 125.2.2.2 activate neighbor 125.2.2.2 send-community extended neighbor 223.0.0.3 activate neighbor 223.0.0.3 send-community extended no auto-summary exit-address-family ! |
Medina |
---|
Current configuration: ! ip vrf vrf101 rd 1:101 route-target export 1:101 route-target import 1:101 ip cef ! interface Loopback1 ip vrf forwarding vrf101 ip address 11.2.2.2 255.255.255.252 ! interface ATM2/0 no ip address no ATM ilmi-keepalive ! interface ATM2/0.66 tag-switching ip address 125.1.4.2 255.255.255.252 tag-switching ip ! interface Ethernet1/1 ip vrf forwarding vrf101 ip address 11.3.3.1 255.255.255.252 ! router ospf 1 network 125.1.4.0 0.0.0.3 area 0 network 125.2.2.2 0.0.0.0 area 0 ! router rip version 2 network 11.0.0.0 ! address-family ipv4 vrf vrf101 version 2 redistribute bgp 1 metric 1 network 11.0.0.0 no auto-summary exit-address-family ! router bgp 1 no synchronization neighbor 223.0.0.3 remote-as 1 neighbor 223.0.0.3 update-source Loopback0 neighbor 223.0.0.21 remote-as 1 neighbor 223.0.0.21 update-source Loopback0 ! address-family ipv4 vrf vrf101 redistribute connected redistribute static redistribute rip default-information originate no auto-summary no synchronization exit-address-family ! address-family vpnv4 neighbor 223.0.0.3 activate neighbor 223.0.0.3 send-community extended neighbor 223.0.0.21 activate neighbor 223.0.0.21 send-community extended exit-address-family ! |
Rápido |
---|
Current configuration: ! interface Loopback0 ip address 223.0.0.12 255.255.255.255 ! interface Loopback2 ip address 7.7.7.7 255.255.255.0 ! interface FastEthernet0/1 ip address 150.150.0.2 255.255.255.0 duplex auto speed auto ! router rip version 2 redistribute static network 7.0.0.0 network 10.0.0.0 network 150.150.0.0 no auto-summary ! ip route 158.0.0.0 255.0.0.0 Null0 ! |
Damme |
---|
! interface Loopback1 ip address 6.6.6.6 255.0.0.0 ! interface FastEthernet0/0 ip address 10.200.10.14 255.255.252.0 duplex auto speed autoa ! router bgp 158 no synchronization network 6.0.0.0 network 10.200.0.0 mask 255.255.252.0 neighbor 10.200.10.3 remote-as 1 no auto-summary ! |
Pivrnec |
---|
Current configuration: ! interface Loopback0 ip address 223.0.0.22 255.255.255.255 ! interface Loopback1 ip address 6.6.6.6 255.255.255.255 ! interface FastEthernet0/1 ip address 200.200.0.2 255.255.255.0 duplex auto speed auto ! router rip version 2 redistribute static network 6.0.0.0 network 200.200.0.0 no auto-summary ! ip route 69.0.0.0 255.0.0.0 Null0 ! |
Guilder |
---|
! interface Loopback2 ip address 150.150.0.1 255.255.0.0 ! interface Ethernet0/2 ip address 201.201.201.2 255.255.255.252 ! router bgp 69 no synchronization network 7.7.7.0 mask 255.255.0.0 network 150.150.0.0 network 201.201.201.0 mask 255.255.255.252 redistribute connected neighbor 201.201.201.1 remote-as 1 no auto-summary ! |
Purkmister |
---|
Current configuration: ! interface Loopback0 ip address 11.5.5.5 255.255.255.252 ! interface FastEthernet0/1 ip address 11.3.3.2 255.255.255.252 duplex auto speed auto ! router rip version 2 network 11.0.0.0 ! |
Antes de que utilice los comandos debug, consulte Información Importante sobre los Comandos Debug. Los comandos específicos de ruteo se enumeran aquí:
show ip rip database vrf - Muestra información contenida en la base de datos RIP para un VRF particular.
show ip bgp vpnv4 vrf - Muestra la información de dirección de VPN desde la tabla BGP.
show ip route vrf - Muestra la tabla de IP Routing asociada a un VRF.
show ip route: muestra todas las rutas IP estáticas o aquellas instaladas mediante la función de descarga de rutas de autenticación, autorización y contabilidad (AAA).
La herramienta Output Interpreter (sólo para clientes registrados) permite utilizar algunos comandos “show” y ver un análisis del resultado de estos comandos.
En un router PE, el método de ruteo PE-CE como RIP, BGP o static, y las actualizaciones BGP PE-PE indican la tabla de ruteo utilizada para un VRF determinado. Puede ver la información de RIP para una VRF en particular, de la siguiente manera:
Alcazaba# show ip rip database vrf vrf101 0.0.0.0/0 auto-summary 0.0.0.0/0 [2] via 150.150.0.2, 00:00:12, Ethernet1/1 6.0.0.0/8 auto-summary 6.6.6.6/32 redistributed [1] via 223.0.0.21, 7.0.0.0/8 auto-summary 7.7.7.0/24 [1] via 150.150.0.2, 00:00:12, Ethernet1/1 10.0.0.0/8 auto-summary 10.0.0.0/8 redistributed [1] via 125.2.2.2, 10.0.0.0/16 [1] via 150.150.0.2, 00:00:12, Ethernet1/1 10.200.8.0/22 [1] via 150.150.0.2, 00:00:12, Ethernet1/1 11.0.0.0/8 auto-summary 11.0.0.4/30 redistributed [1] via 125.2.2.2, 11.1.1.0/30 redistributed [1] via 125.2.2.2, 11.3.3.0/30 redistributed [1] via 125.2.2.2, 11.5.5.4/30 redistributed [1] via 125.2.2.2, 69.0.0.0/8 auto-summary 69.0.0.0/8 redistributed [1] via 223.0.0.21, 150.150.0.0/16 auto-summary 150.150.0.0/24 directly connected, Ethernet1/1 158.0.0.0/8 [1] via 150.150.0.2, 00:00:17, Ethernet1/1 200.200.0.0/24 auto-summary 200.200.0.0/24 redistributed [1] via 223.0.0.21,
Puede mostrar la información de BGP para un VRF determinado usando el comando show ip bgp vpnv4 vrf. Los resultados PE-PE del BGP interno (iBGP) se indican mediante una i en el resultado siguiente.
Alcazaba# show ip bgp vpnv4 vrf vrf101 BGP table version is 46, local router ID is 223.0.0.3 Status codes: s suppressed, d damped, h history, * valid, best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path Route Distinguisher: 1:101 (default for vrf vrf101) *i6.6.6.6/32 223.0.0.21 1 100 0 ? * 7.7.7.0/24 150.150.0.2 1 32768 ? * 10.0.0.0/16 150.150.0.2 1 32768 ? * 10.200.8.0/22 150.150.0.2 1 32768 ? *i11.2.2.0/30 125.2.2.2 0 100 0 ? *i11.3.3.0/30 125.2.2.2 0 100 0 ? *i11.5.5.4/30 125.2.2.2 1 100 0 ? *i69.0.0.0 223.0.0.21 1 100 0 ? * 150.150.0.0/24 0.0.0.0 0 32768 ? * 158.0.0.0/8 150.150.0.2 1 32768 ? *i200.200.0.0 223.0.0.21 0 100 0 ?
Verifique la tabla de ruteo global para un VRF en los routers PE y CE. Estos VRF deben coincidir. Para el router PE, debe especificar el VRF usando el comando show ip route vrf:
Alcazaba# show ip route vrf vrf101 Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - ISIS, L1 - ISIS level-1, L2 - ISIS level-2, IA - ISIS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set B 69.0.0.0/8 [200/1] via 223.0.0.21, 00:11:03 B 200.200.0.0/24 [200/0] via 223.0.0.21, 00:11:03 6.0.0.0/32 is subnetted, 1 subnets B 6.6.6.6 [200/1] via 223.0.0.21, 00:11:03 7.0.0.0/24 is subnetted, 1 subnets R 7.7.7.0 [120/1] via 150.150.0.2, 00:00:05, Ethernet1/1 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks R 10.0.0.0/16 [120/1] via 150.150.0.2, 00:00:05, Ethernet1/1 R 10.200.8.0/22 [120/1] via 150.150.0.2, 00:00:05, Ethernet1/1 11.0.0.0/30 is subnetted, 3 subnets B 11.3.3.0 [200/0] via 125.2.2.2, 00:07:05 B 11.2.2.0 [200/0] via 125.2.2.2, 00:07:05 B 11.5.5.4 [200/1] via 125.2.2.2, 00:07:05 150.150.0.0/24 is subnetted, 1 subnets C 150.150.0.0 is directly connected, Ethernet1/1 R 158.0.0.0/8 [120/1] via 150.150.0.2, 00:00:06, Ethernet1/1
El comando equivalente en Pivrnec es el comando show ip route, ya que para cada cliente (y cada router de borde del cliente) esta es la tabla de ruteo estándar.
Pivrnec# show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - ISIS, L1 - ISIS level-1, L2 - ISIS level-2, IA - ISIS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set S 69.0.0.0/8 is directly connected, Null0 223.0.0.0/32 is subnetted, 1 subnets C 223.0.0.22 is directly connected, Loopback0 C 200.200.0.0/24 is directly connected, FastEthernet0/1 6.0.0.0/32 is subnetted, 1 subnets C 6.6.6.6 is directly connected, Loopback1 7.0.0.0/24 is subnetted, 1 subnets R 7.7.7.0 [120/1] via 200.200.0.1, 00:00:23, FastEthernet0/1 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks R 10.0.0.0/16 [120/1] via 200.200.0.1, 00:00:23, FastEthernet0/1 R 10.200.8.0/22 [120/1] via 200.200.0.1, 00:00:24, FastEthernet0/1 11.0.0.0/30 is subnetted, 3 subnets R 11.3.3.0 [120/1] via 200.200.0.1, 00:00:24, FastEthernet0/1 R 11.2.2.0 [120/1] via 200.200.0.1, 00:00:25, FastEthernet0/1 R 11.5.5.4 [120/1] via 200.200.0.1, 00:00:25, FastEthernet0/1 150.150.0.0/24 is subnetted, 1 subnets R 150.150.0.0 [120/1] via 200.200.0.1, 00:00:25, FastEthernet0/1 R 158.0.0.0/8 [120/1] via 200.200.0.1, 00:00:25, FastEthernet0/1
Verifique la pila de etiquetas utilizada para cualquier ruta de la siguiente manera:
Alcazaba# show tag-switching forwarding-table vrf vrf101 11.5.5.5 detail Local Outgoing Prefix Bytes tag Outgoing Next Hop tag tag or VC or Tunnel Id switched interface None 2/91 11.5.5.4/30 0 AT4/0.1 point2point MAC/Encaps=4/12, MTU=4466, Tag Stack{2/91(vcd=69) 37} 00458847 0004500000025000
Puede utilizar los comandos normales para ver las asignaciones de etiquetas junto con el identificador de ruta virtual y las relaciones del identificador de canal virtual (VPI/VCI), como se muestra en Cómo resolver problemas de VPN MPLS .
Puede utilizar la misma dirección en diferentes VPN sin interferir con otras VPN. En este ejemplo, la dirección 6.6.6.6 está conectada dos veces, a Pivrnec en VPN 101 y a Damme en VPN 102. Podemos verificar esto usando el comando ping en un sitio y el comando debug ip icmp en el otro sitio.
Guilder# ping 6.6.6.6 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 6.6.6.6, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms Damme# debug ip icmp ICMP packet debugging is on 6d22h: ICMP: echo reply sent, src 6.6.6.6, DST 201.201.201.2 6d22h: ICMP: echo reply sent, src 6.6.6.6, DST 201.201.201.2 6d22h: ICMP: echo reply sent, src 6.6.6.6, DST 201.201.201.2 6d22h: ICMP: echo reply sent, src 6.6.6.6, DST 201.201.201.2 6d22h: ICMP: echo reply sent, src 6.6.6.6, DST 201.201.201.2
Consulte Flujo de Paquetes en un Entorno MPLS VPN para ver el ejemplo de salida usando la misma configuración.
Actualmente, no hay información específica de troubleshooting disponible para esta configuración.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
19-Sep-2018 |
Versión inicial |