이 문서에서는 mGRE(Multipoint Generic Routing Encapsulation) 터널 기능을 사용하여 L3(Dynamic Layer 3) VPN을 구성하는 방법에 대해 설명합니다.
mGRE 터널 기능을 사용하여 동적 L3 VPN을 구성하기 전에 MPLS(Multiprotocol Label Switching) VPN이 구성되어 제대로 작동하고 IPV4 네트워크에 대해 엔드 투 엔드 연결이 설정되었는지 확인하십시오.
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
mGRE 터널이 포함된 동적 L3 VPN은 IP 네트워크에서 사용할 수 있도록 향상된 mGRE 터널링 기술을 기반으로 L3 전송 메커니즘을 제공합니다.또한 IP 네트워크 내에서 동적 L3 터널링 전송을 사용하여 통신 사업자와 엔터프라이즈 네트워크 간에 VPN 트래픽을 전송하고 IP와 MPLS VPN 간의 패킷 전송에 대한 상호 운용성을 제공할 수 있습니다.이 기능은 엔터프라이즈 네트워크에 대한 IP 백본 서비스의 아웃소싱을 정의하는 RFC 2547을 지원합니다.
다음은 mGRE 터널이 있는 동적 L3 VPN에 적용되는 제한 사항 목록입니다.
이 섹션에서는 두 가지 컨피그레이션에 대해 설명합니다.
라우터 3(R3) 및 라우터 2(R2)에서 필요한 컨피그레이션입니다.
R3에 대한 컨피그레이션은 다음과 같습니다.
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
R2의 구성은 다음과 같습니다.
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
이 섹션을 사용하여 컨피그레이션이 제대로 작동하는지 확인합니다.
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
하나의 연결이 MPLS이고 다른 연결이 MPLS가 아닌 이중 연결 시나리오가 있는 경우 관련된 모든 PE 라우터에서 mGRE를 구성해야 합니다.이 토폴로지를 사용하면 3개의 PE 라우터 모두에서 mGRE를 구성해야 합니다.
R3과 R1 - MPLS 간의 연결에 mGRE를 구성하지 않은 경우 R3 뒤에 있는 서브넷이 R2 뒤에 있는 서브넷과 통신할 수 없습니다.
R1 및 R2는 L3 VPN 프로파일을 기반으로 R3을 사용하여 터널 엔드포인트를 구축합니다.L3 VPN 프로파일이 구성되지 않고 R3의 BGP(Border Gateway Protocol) 피어에 대한 경로 맵이 적용되지 않으며 R1의 R3용 L3 VPN에 대한 경로 맵이 적용되지 않는 이 문서의 컨피그레이션을 참조하십시오.
이는 R1, R2 및 R3에 필요한 컨피그레이션입니다.
R1의 구성은 다음과 같습니다.
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
R2의 구성은 다음과 같습니다.
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
R3에 대한 컨피그레이션은 다음과 같습니다.
router bgp 65534
address-family vpnv4
neighbor 192.168.1.1 activate
이제 R2 루프백1에서 R3 루프백1으로 ping할 수 있습니다.
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는 172.16.3.3 경로에 대한 BGP next-hop을 기반으로 192.168.3.3에 대한 동적 터널을 생성했습니다.
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
R1에서 확인되며 두 PE 라우터에 대한 터널 엔드포인트를 생성했습니다.
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
R3에서는 터널 엔드포인트가 생성되지 않습니다.
R3#show tunnel endpoints
다음은 ping을 시작한 R2 서브넷의 경로입니다.
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
따라서 패킷은 GRE에서 R3로 캡슐화됩니다. R3에는 터널이 없으므로 GRE 패킷을 수락하지 않고 삭제합니다.
따라서 경로에 mGRE를 구성하여 작동해야 합니다.R3에서 mGRE를 구성하는 데 필요한 사항은 다음과 같습니다.
l3vpn encapsulation ip MGRE
transport ipv4 source Loopback0
route-map MGRE-NEXT-HOP permit 10
set ip next-hop encapsulate l3vpn MGRE
L3 VPN 프로파일을 생성하면 터널 엔드포인트가 생성되고 이전에 삭제된 트래픽을 수신합니다.그러나 반환 트래픽은 BGP 피어에서 프로필을 적용할 때까지 MPLS이며 GRE가 아닙니다.R1에는 IP만 실행되는 R2에 대한 레이블 정보가 없으므로 R1에서 해당 트래픽이 삭제됩니다.
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
시나리오 3
R5 뒤에 있는 서브넷으로, R3과 통신해야 하는 경우 mGRE를 사용하지 않으려는 경우그런 다음 L3 VPN 프로필에 사용된 경로 맵을 사용하여 next-hop을 설정하고 prefix-list를 호출하고 mGRE 터널이 필요한 접두사만 허용할 수 있습니다.
R1의 구성은 다음과 같습니다.
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
mGRE 터널이 필요한 접두사 목록 테스트에서 접두사를 허용할 수 있으며, 다른 모든 테스트에는 종료 인터페이스로 터널이 없으며 정상적인 라우팅을 따릅니다.이 구성은 R3 및 R5에 엔드 투 엔드 MPLS 연결이 있으므로 작동합니다.
현재 이 컨피그레이션에 사용할 수 있는 특정 문제 해결 정보가 없습니다.