In diesem Dokument wird beschrieben, wie dynamische Layer-3-VPNs (L3) mit der mGRE-Tunnelfunktion (Generic Routing Encapsulation) konfiguriert werden.
Bevor Sie dynamische L3-VPNs mit der mGRE-Tunnelfunktion konfigurieren, stellen Sie sicher, dass Ihr MPLS-VPN (Multiprotocol Label Switching) konfiguriert ist und ordnungsgemäß funktioniert und dass für das IPV4-Netzwerk eine End-to-End-Verbindung eingerichtet ist.
Die Informationen in diesem Dokument basieren auf den folgenden Software- und Hardwareversionen:
Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.
Die Funktion für dynamische L3-VPNs mit mGRE-Tunneln bietet einen L3-Transportmechanismus auf der Grundlage einer verbesserten mGRE-Tunneling-Technologie für die Verwendung in IP-Netzwerken. Der dynamische L3-Tunneling-Transport kann auch in IP-Netzwerken verwendet werden, um VPN-Datenverkehr zwischen Service Provider- und Unternehmensnetzwerken zu transportieren und die Interoperabilität für den Pakettransport zwischen IP- und MPLS-VPNs zu gewährleisten. Diese Funktion bietet Unterstützung für RFC 2547, der das Outsourcing von IP-Backbone-Services für Unternehmensnetzwerke definiert.
Nachfolgend finden Sie eine Liste von Einschränkungen, die für dynamische L3-VPNs mit mGRE-Tunneln gelten:
In diesem Abschnitt werden zwei Konfigurationen beschrieben:
Dies sind die erforderlichen Konfigurationen für Router 3 (R3) und Router 2 (R2).
Die Konfiguration für R3 sieht wie folgt aus:
l3vpn encapsulation ip MGRE
transport ipv4 source Loopback0
route-map MGRE-NEXT-HOP permit 10
set ip next-hop encapsulate l3vpn MGRE
router bgp 65534
!
address-family vpnv4
neighbor 192.168.2.2 route-map MGRE-NEXT-HOP in
Die Konfiguration für R2 ist wie folgt:
l3vpn encapsulation ip MGRE
transport ipv4 source Loopback0
route-map MGRE-NEXT-HOP permit 10
set ip next-hop encapsulate l3vpn MGRE
router bgp 65534
!
address-family vpnv4
neighbor 192.168.3.3 route-map MGRE-NEXT-HOP in
In diesem Abschnitt überprüfen Sie, ob Ihre Konfiguration ordnungsgemäß funktioniert.
R2#show tunnel endpoints
Tunnel0 running in multi-GRE/IP mode
Endpoint transport 192.168.3.3 Refcount 3 Base 0x1E8E1B74 Create Time 00:47:53
overlay 192.168.3.3 Refcount 2 Parent 0x1E8E1B74 Create Time 00:47:53
R2#show l3vpn encapsulation ip MGRE
Profile: MGRE
transport ipv4 source Loopback0
protocol gre
payload mpls
mtu default
Tunnel Tunnel0 Created [OK]
Tunnel Linestate [OK]
Tunnel Transport Source Loopback0 [OK]
R2#show ip route vrf MGRE 172.16.3.3
Routing Table: MGRE
Routing entry for 172.16.3.3
Known via "bgp 65534", distance 200, metric 0, type internal
Last update from 192.168.3.3 on Tunnel0, 01:03:25 ago
Routing Descriptor Blocks:
* 192.168.3.3 (default), from 172.16.112.1, 01:03:25 ago, via Tunnel0 <points to tunnel
Route metric is 0, traffic share count is 1
AS Hops 0
MPLS label: 17 <BGP vpnv4 label>
MPLS Flags: MPLS Required
Wenn eine Verbindung über MPLS und eine nicht MPLS-Verbindung verfügt, müssen Sie mGRE auf allen beteiligten PE-Routern konfigurieren. Bei dieser Topologie müssen Sie mGRE auf allen drei PE-Routern konfigurieren.
Wenn Sie mGRE nicht für die Verbindung zwischen R3 und R1 - MPLS konfiguriert haben, können die Subnetze hinter R3 nicht mit den Subnetzen hinter R2 kommunizieren.
R1- und R2-Tunnel-Endpunkte mit R3 basierend auf dem L3-VPN-Profil erstellen. Informationen zur Konfiguration in diesem Dokument finden Sie, wenn das L3-VPN-Profil nicht konfiguriert ist, die Route Map zum Border Gateway Protocol (BGP)-Peer auf R3 nicht angewendet wird und die Route Map für das L3-VPN für R3 auf R1 nicht angewendet wird.
Dies sind die erforderlichen Konfigurationen für R1, R2 und R3.
Die Konfiguration für R1 ist wie folgt:
l3vpn encapsulation ip MGRE
transport ipv4 source Loopback0
route-map MGRE-NEXT-HOP permit 10
set ip next-hop encapsulate l3vpn MGRE
router bgp 65534
address-family vpnv4
neighbor 192.168.2.2 send-community extended
neighbor 192.168.2.2 route-map MGRE-NEXT-HOP in
neighbor 192.168.3.3 activate
Die Konfiguration für R2 ist wie folgt:
l3vpn encapsulation ip MGRE
transport ipv4 source Loopback0
route-map MGRE-NEXT-HOP permit 10
set ip next-hop encapsulate l3vpn MGRE
router bgp 65534
address-family vpnv4
neighbor 192.168.1.1 route-map MGRE-NEXT-HOP in
neighbor 192.168.1.1 activate
Die Konfiguration für R3 sieht wie folgt aus:
router bgp 65534
address-family vpnv4
neighbor 192.168.1.1 activate
Nun können Sie einen Ping von der R2-Loopback1-Nachricht an die R3-Loopback-Nachricht1 senden:
R2#ping vrf MGRE 172.16.3.3 source 172.16.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.3.3, timeout is 2 seconds:
Packet sent with a source address of 172.16.2.2
.....
Success rate is 0 percent (0/5)
R2#show ip route vrf MGRE 172.16.3.3
Routing Table: MGRE
Routing entry for 172.16.3.3/32
Known via "bgp 65534", distance 200, metric 0, type internal
Last update from 192.168.3.3 on Tunnel0, 00:50:23 ago
Routing Descriptor Blocks:
* 192.168.3.3 (default), from 192.168.1.1, 00:50:23 ago, via Tunnel0pointed towards a tunnel>
Route metric is 0, traffic share count is 1
AS Hops 0
MPLS label: 19
MPLS Flags: MPLS Required
R2#show tunnel endpoints
Tunnel1 running in multi-GRE/IP mode
Tunnel0 running in multi-GRE/IP mode
Endpoint transport 192.168.1.1 Refcount 3 Base 0x507665E4 Create Time 01:24:25
overlay 192.168.1.1 Refcount 2 Parent 0x507665E4 Create Time 01:24:25
Endpoint transport 192.168.3.3 Refcount 3 Base 0x507664D4 Create Time 00:50:51
overlay 192.168.3.3 Refcount 2 Parent 0x507664D4 Create Time 00:50:51
R2 hat einen dynamischen Tunnel für 192.168.3.3 erstellt, der auf dem BGP Next-Hop für die Route 172.16.3.3 basiert.
R2#show ip bgp vpnv4 vrf MGRE 172.16.3.3
BGP routing table entry for 43984:300:172.16.3.3/32, version 29
Paths: (1 available, best #1, table MGRE)
Advertised to update-groups:
1
Local, imported path from 300:300:172.16.3.3/32
192.168.3.3 (metric 3) (via Tunnel0) from 192.168.1.1 (192.168.1.1)
Origin incomplete, metric 0, localpref 100, valid, internal, best
Extended Community: RT:43984:300
Originator: 192.168.3.3, Cluster list: 192.168.1.1
mpls labels in/out nolabel/19
Er wird auf R1 verifiziert und außerdem Tunnel-Endpunkte für beide PE-Router erstellt:
R1#show tunnel endpoints
Tunnel1 running in multi-GRE/IP mode
Tunnel0 running in multi-GRE/IP mode
Endpoint transport 192.168.2.2 Refcount 3 Base 0x1E8EE7B0 Create Time 01:36:41
overlay 192.168.2.2 Refcount 2 Parent 0x1E8EE7B0 Create Time 01:36:41
Endpoint transport 192.168.3.3 Refcount 3 Base 0x1E8EE590 Create Time 00:59:34
overlay 192.168.3.3 Refcount 2 Parent 0x1E8EE590 Create Time 00:59:34
Auf R3 werden keine Tunnel-Endpunkte erstellt:
R3#show tunnel endpoints
Hier ist die Route für das R2-Subnetz, das den Ping-Befehl initiiert hat:
R3#show ip route vrf MGRE 172.16.2.2
Routing Table: MGRE
Routing entry for 172.16.2.2/32
Known via "bgp 65534", distance 200, metric 0, type internal
Last update from 192.168.2.2 01:01:57 ago
Routing Descriptor Blocks:
* 192.168.2.2 (default), from 192.168.1.1, 01:01:57 ago
Route metric is 0, traffic share count is 1
AS Hops 0
MPLS label: 17
MPLS Flags: MPLS Required
Daher wird das Paket in GRE an R3 gekapselt gesendet. Da R3 keinen Tunnel hat, akzeptiert er das GRE-Paket nicht und verwirft es.
Daher müssen Sie mGRE End-to-End auf einem Pfad konfigurieren, damit es funktioniert. Dies ist die erforderliche Konfiguration für mGRE auf R3:
l3vpn encapsulation ip MGRE
transport ipv4 source Loopback0
route-map MGRE-NEXT-HOP permit 10
set ip next-hop encapsulate l3vpn MGRE
Sobald Sie das L3-VPN-Profil erstellen, werden Tunnel-Endpunkte erstellt, und Sie erhalten den zuvor verworfenen Datenverkehr. Der Rückverkehr ist jedoch MPLS und nicht GRE, bis Sie das Profil auf den BGP-Peer anwenden. Dieser Datenverkehr wird auf R1 verworfen, da R1 keine Label-Informationen für R2 enthält, der nur IP ausführt.
R3#show tunnel endpoints
Tunnel0 running in multi-GRE/IP mode
Endpoint transport 192.168.1.1 Refcount 3 Base 0x2B79FBD4 Create Time 00:00:02
overlay 192.168.1.1 Refcount 2 Parent 0x2B79FBD4 Create Time 00:00:02
Endpoint transport 192.168.2.2 Refcount 3 Base 0x2B79FAC4 Create Time 00:00:02
overlay 192.168.2.2 Refcount 2 Parent 0x2B79FAC4 Create Time 00:00:02
R3#show ip cef vrf MGRE 172.16.2.2
172.16.2.2/32
nexthop 192.168.13.1 GigabitEthernet0/0.1503 label 21 17
router bgp 65534
address-family vpnv4
neighbor 192.168.1.1 route-map MGRE-NEXT-HOP in
R3#show ip cef vrf MGRE 172.16.2.2
172.16.2.2/32
nexthop 192.168.2.2 Tunnel0 label 17
R2#ping vrf MGRE 172.16.3.3 source 172.16.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.3.3, timeout is 2 seconds:
Packet sent with a source address of 172.16.2.2
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Szenario 3
Angenommen, Subnetze hinter R5, die mit R3 kommunizieren müssen, möchten nicht mGRE verwenden. Anschließend können Sie die für das L3-VPN-Profil verwendete Route-Map verwenden, um den Next-Hop festzulegen, eine Präfixliste aufzurufen und nur die Präfixe zuzulassen, die den mGRE-Tunnel benötigen.
Die Konfiguration für R1 ist wie folgt:
route-map MGRE-NEXT-HOP permit 10
match ip address prefix-list test
set ip next-hop encapsulate l3vpn MGRE
route-map MGRE-NEXT-HOP permit 20
Sie können Präfixe im Präfixlistentest zulassen, die den mGRE-Tunnel benötigen, und alle anderen Geräte verfügen über keinen Tunnel als Ausgangsschnittstelle und folgen dem normalen Routing. Diese Konfiguration funktioniert, da R3 und R5 über eine durchgängige MPLS-Verbindung verfügen.
Für diese Konfiguration sind derzeit keine spezifischen Informationen zur Fehlerbehebung verfügbar.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
04-Nov-2013 |
Erstveröffentlichung |