DMVPN Phase 3
핵심 요약
- Phase 2의 개선 버전: NHRP shortcut과 redirect를 사용하여 요약 라우트만으로도 spoke-to-spoke 직접 통신이 가능하다.
- 추가 명령 2개만 필요: Hub에
ip nhrp redirect, Spoke에ip nhrp shortcut.- 허브에서 요약 라우트 사용 가능: 라우팅 테이블 축소 → 확장성 최고.
- 모든 라우팅 프로토콜 호환: RIP, EIGRP, OSPF, BGP 모두 요약 라우트와 함께 사용 가능.
Phase 3은 Phase 2의 개선 버전으로, NHRP shortcut과 redirect 메커니즘을 사용하여 요약 라우트만으로도 스포크 간 직접 통신이 가능하다. Phase 2에서는 허브가 구체적 경로(specific route)를 광고해야 했지만, Phase 3에서는 요약 경로만 광고해도 NHRP가 자동으로 최적 경로를 설치한다.
1. Phase 2 대비 변경점
| 항목 | Phase 2 | Phase 3 |
|---|---|---|
| 추가 NHRP 명령 | 없음 | ip nhrp redirect + ip nhrp shortcut |
| 허브에서 요약 라우트 | 불가 | 가능 |
| 라우팅 테이블 크기 | 큼 (구체적 경로 필요) | 작음 (요약 경로 + NHRP shortcut) |
| 확장성 | 낮음 | 최고 |
2. 토폴로지 및 기본 설정
토폴로지
Phase 2 → Phase 3 마이그레이션 (추가 명령 2개)
Phase 2 설정이 완료된 상태에서 아래 두 명령만 추가하면 Phase 3이 된다.
Hub(config)#interface Tunnel0
Hub(config-if)#ip nhrp redirect
Spoke1(config)#interface Tunnel0
Spoke1(config-if)#ip nhrp shortcut| 명령 | 위치 | 역할 |
|---|---|---|
ip nhrp redirect | Hub | 허브를 경유하는 spoke-to-spoke 트래픽 감지 시, 발신 스포크에게 “직접 통신 가능”하다고 NHRP redirect 메시지 전송 |
ip nhrp shortcut | Spoke | NHRP redirect를 수신하면, NHRP resolution을 수행하고 라우팅 테이블에 shortcut 경로 설치 |
전체 Hub 설정
Hub(config)#interface Tunnel0
Hub(config-if)#ip address 172.16.123.1 255.255.255.0
Hub(config-if)#ip nhrp authentication DMVPN
Hub(config-if)#ip nhrp map multicast dynamic
Hub(config-if)#ip nhrp network-id 1
Hub(config-if)#ip nhrp redirect ← Phase 3 추가
Hub(config-if)#tunnel source GigabitEthernet0/1
Hub(config-if)#tunnel mode gre multipoint전체 Spoke 설정
Spoke1(config)#interface Tunnel0
Spoke1(config-if)#ip address 172.16.123.2 255.255.255.0
Spoke1(config-if)#ip nhrp authentication DMVPN
Spoke1(config-if)#ip nhrp map 172.16.123.1 192.168.123.1
Spoke1(config-if)#ip nhrp map multicast 192.168.123.1
Spoke1(config-if)#ip nhrp network-id 1
Spoke1(config-if)#ip nhrp nhs 172.16.123.1
Spoke1(config-if)#ip nhrp shortcut ← Phase 3 추가
Spoke1(config-if)#tunnel source GigabitEthernet0/1
Spoke1(config-if)#tunnel mode gre multipoint3. Phase 3 동작 흐름
Phase 3에서 spoke-to-spoke 직접 통신이 수립되는 과정은 다음과 같다.
[Spoke1] ---(1) 트래픽 → Hub 경유 ----------→ [Hub] ---→ [Spoke2]
[Hub] ---(2) NHRP Redirect ---------------→ [Spoke1]
[Spoke1] ---(3) NHRP Resolution Request -----→ [Hub]
[Hub] ---(4) NHRP Resolution Reply -------→ [Spoke1] (Spoke2의 NBMA 주소)
[Spoke1] ---(5) 직접 GRE 터널 + Shortcut 설치 → [Spoke2]- Spoke1이 Spoke2로 트래픽을 전송하면, 요약 경로에 의해 Hub을 경유한다.
- Hub은
ip nhrp redirect에 의해 “이 트래픽은 직접 통신 가능”하다는 NHRP Redirect 메시지를 Spoke1에 전송한다. - Spoke1은
ip nhrp shortcut에 의해 Hub(NHS)에게 NHRP Resolution Request를 전송한다. - Hub은 Spoke2의 NBMA 주소를 NHRP Resolution Reply로 응답한다.
- Spoke1은 라우팅 테이블에 shortcut 경로를 설치하고, Spoke2와 직접 GRE 터널을 수립한다.
핵심 포인트: Phase 2와 달리, 라우팅 테이블에 구체적 경로가 없어도 NHRP가 자동으로 shortcut 경로를 설치한다. 이 shortcut 경로는 라우팅 프로토콜이 아닌 NHRP에 의해 관리되며, NHRP 캐시가 만료되면 자동으로 제거된다.
4. 라우팅 프로토콜 설정
Phase 3의 가장 큰 장점은 모든 라우팅 프로토콜에서 요약 라우트를 사용할 수 있다는 점이다. 허브에서 요약 경로만 광고하면 라우팅 테이블을 작게 유지하면서도 spoke-to-spoke 직접 통신이 가능하다.
4.1. RIP 설정
RIP에서는 ip summary-address rip으로 허브에서 요약 경로를 광고한다.
Hub 설정
Hub(config)#router rip
Hub(config-router)#version 2
Hub(config-router)#no auto-summary
Hub(config-router)#network 172.16.0.0
Hub(config-router)#network 10.0.0.0
Hub(config)#interface Tunnel0
Hub(config-if)#no ip split-horizon
Hub(config-if)#ip summary-address rip 192.168.0.0 255.255.0.0 ← 요약 라우트Spoke 설정
Spoke1(config)#router rip
Spoke1(config-router)#version 2
Spoke1(config-router)#no auto-summary
Spoke1(config-router)#network 172.16.0.0
Spoke1(config-router)#network 192.168.1.04.2. EIGRP 설정
EIGRP에서는 ip summary-address eigrp로 요약 경로를 광고한다. Phase 2와 달리 no ip next-hop-self eigrp가 반드시 필요하지 않다 (NHRP shortcut이 라우팅을 오버라이드하기 때문).
Hub 설정
Hub(config)#router eigrp 1
Hub(config-router)#network 172.16.123.0 0.0.0.255
Hub(config-router)#network 10.0.0.0 0.0.0.255
Hub(config)#interface Tunnel0
Hub(config-if)#no ip split-horizon eigrp 1
Hub(config-if)#ip summary-address eigrp 1 192.168.0.0 255.255.0.0 ← 요약 라우트Spoke 설정
Spoke1(config)#router eigrp 1
Spoke1(config-router)#network 172.16.123.0 0.0.0.255
Spoke1(config-router)#network 192.168.1.0 0.0.0.255핵심 포인트: Phase 3에서는 NHRP shortcut이 EIGRP 라우팅 테이블보다 우선한다. 따라서 허브에서 요약 경로를 광고해도 스포크 간 직접 통신 시 NHRP가 자동으로 구체적 shortcut 경로를 설치한다.
4.3. OSPF 설정
OSPF에서는 network type 선택이 중요하다. Phase 3에서는 point-to-multipoint 또는 broadcast 모두 사용 가능하다.
Hub 설정 (point-to-multipoint 방식)
Hub(config)#router ospf 1
Hub(config-router)#network 172.16.123.0 0.0.0.255 area 0
Hub(config-router)#network 10.0.0.0 0.0.0.255 area 0
Hub(config)#interface Tunnel0
Hub(config-if)#ip ospf network point-to-multipointSpoke 설정
Spoke1(config)#router ospf 1
Spoke1(config-router)#network 172.16.123.0 0.0.0.255 area 0
Spoke1(config-router)#network 192.168.1.0 0.0.0.255 area 0
Spoke1(config)#interface Tunnel0
Spoke1(config-if)#ip ospf network point-to-multipoint| OSPF Network Type | DR/BDR 선출 | 허브-스포크 호환 | 비고 |
|---|---|---|---|
| point-to-multipoint | 없음 | 권장 | 설정 간단, DR 선출 불필요 |
| broadcast | 있음 | 가능 | 허브를 DR로 지정 필요 (ip ospf priority) |
| point-to-point | 없음 | 불가 | 1:1 관계만 지원 |
4.4. BGP 설정
BGP에서도 요약 라우트와 함께 사용 가능하다. Phase 2와 마찬가지로 허브를 route-reflector로 구성한다.
Hub 설정 (Route-Reflector)
Hub(config)#router bgp 1
Hub(config-router)#neighbor 172.16.123.2 remote-as 1
Hub(config-router)#neighbor 172.16.123.3 remote-as 1
Hub(config-router)#neighbor 172.16.123.2 route-reflector-client
Hub(config-router)#neighbor 172.16.123.3 route-reflector-client
Hub(config-router)#aggregate-address 192.168.0.0 255.255.0.0 summary-only ← 요약 라우트
Hub(config-router)#network 10.0.0.0 mask 255.255.255.0Spoke 설정
Spoke1(config)#router bgp 1
Spoke1(config-router)#neighbor 172.16.123.1 remote-as 1
Spoke1(config-router)#network 192.168.1.0 mask 255.255.255.0핵심 포인트: Phase 3에서는 BGP의
aggregate-address summary-only로 요약 경로만 광고해도 NHRP shortcut이 자동으로 구체적 경로를 설치하므로 spoke-to-spoke 통신에 문제가 없다.
5. NHRP Shortcut 확인 명령
Spoke1#show ip nhrp shortcut
172.16.123.3/32 via 172.16.123.3
Tunnel0 created 00:01:30, expire 01:58:30
Type: dynamic, Flags: router nhop rib
NBMA address: 192.168.123.3
Spoke1#show ip route nhrp
192.168.2.0/24 [250/1] via 172.16.123.3, 00:01:30, Tunnel0show ip nhrp shortcut: NHRP shortcut 경로 확인show ip route nhrp: NHRP에 의해 설치된 라우팅 테이블 엔트리 확인- NHRP 경로의 administrative distance는 250으로, 대부분의 라우팅 프로토콜보다 높지만 요약 경로보다 구체적이므로 longest match에 의해 우선 선택된다.
6. Phase 3의 장점 요약
| 장점 | 설명 |
|---|---|
| 요약 라우트 사용 가능 | 허브에서 요약 경로만 광고 → 라우팅 테이블 축소 |
| 최고의 확장성 | 스포크 수가 증가해도 라우팅 오버헤드가 증가하지 않음 |
| 간단한 마이그레이션 | Phase 2 설정에 2개 명령만 추가 |
| 모든 라우팅 프로토콜 호환 | RIP, EIGRP, OSPF, BGP 모두 사용 가능 |
| 자동 최적 경로 | NHRP가 자동으로 shortcut 경로를 설치/제거 |
실무 권장: 대부분의 DMVPN 환경에서 Phase 3을 기본으로 사용한다. Phase 1은 보안상 모든 트래픽을 허브에서 감사해야 하는 특수한 경우에만, Phase 2는 거의 사용하지 않는다.
관련 문서
- [[04_DMVPN Phase 2]] - Phase 2 설정 및 제약사항
- [[06_DMVPN Phase 비교 및 요약]] - Phase 간 비교
- 원본:
04_VPN/원본/15_DMVPN Phase 3 Basic Configuration.pdf - 원본:
04_VPN/원본/16_DMVPN Phase 3 RIP Routing.pdf - 원본:
04_VPN/원본/17_DMVPN Phase 3 EIGRP Routing.pdf - 원본:
04_VPN/원본/18_DMVPN Phase 3 OSPF Routing.pdf - 원본:
04_VPN/원본/19_DMVPN Phase 3 BGP Routing.pdf