본문 바로가기
네트워크

VRRP(Virtual Router Redundancy Protocol)

by CBROJIN 2024. 11. 20.

VRRP 실습 토폴로지

 

VRRP Configuration
L3-SW(config)#ip routing
L3-SW(config)#int loopback 0
L3-SW(config-if)#ip add 1.1.100.2 255.255.255.0
L3-SW(config)#int e0/0
L3-SW(config-if)#no switchport
L3-SW(config-if)#ip add 1.1.20.21 255.255.255.0
L3-SW(config)#int e0/1
L3-SW(config-if)#no switchport
L3-SW(config-if)#ip add 1.1.30.21 255.255.255.0

L3-SW(config)#router ospf 1
L3-SW(config-router)#network 1.1.100.2 0.0.0.0 area 0
L3-SW(config-router)#network 1.1.20.21 0.0.0.0 area 0
L3-SW(config-router)#network 1.1.30.21 0.0.0.0 area 0
SW1(config)#vlan 10
SW1(config)int range e0/0-3
SW1(config-if)switchport mode access
SW1(config-if)switchport access vlan 10

VPC1:ip 1.1.10.3/24 1.1.10.253
VPC2:ip 1.1.10.4/24 1.1.10.254
R1(config)#int e0/1
R1(config-if)#ip add 1.1.20.22 255.255.255.0
R1(config-if)#no shut
R1(config)#int e0/0
R1(config-if)#ip add 1.1.10.13 255.255.255.0
R1(config-if)#no shut

R1(config)#router ospf 1
R1(config-router)#network 1.1.20.22 0.0.0.0 area 0
R1(config-router)#network 1.1.10.13 0.0.0.0 area 0

R1(config)#int e0/0
R1(config-if)#vrrp 1 preempt delay minimum 50
R1(config-if)#vrrp 1 priority 109
R1(config-if)#vrrp 1 timers advertise 3
R1(config-if)#vrrp 1 timers learn 
R1(config-if)#vrrp 1 track 11
R1(config-if)#vrrp 1 ip 1.1.10.253
R1(config-if)#vrrp 2 preempt 
R1(config-if)#vrrp 2 timers learn
R1(config-if)#vrrp 2 ip 1.1.10.254

R1(config)#track 11 int e0/1 line-protocol 
R2(config)#int e0/1
R2(config-if)#ip add 1.1.30.22 255.255.255.0
R2(config-if)#no shut
R2(config)#int e0/0
R2(config-if)#ip add 1.1.10.14 255.255.255.0
R2(config-if)#no shut

R2(config)#router ospf 1
R2(config-router)#network 1.1.30.22 0.0.0.0 area 0
R2(config-router)#network 1.1.10.14 0.0.0.0 area 0

R2(config)#int e0/0
R2(config-if)#vrrp 2 preempt delay minimum 50
R2(config-if)#vrrp 2 priority 109
R2(config-if)#vrrp 2 timers advertise 3
R2(config-if)#vrrp 2 timers learn 
R2(config-if)#vrrp 2 track 21
R2(config-if)#vrrp 2 ip 1.1.10.254
R2(config-if)#vrrp 1 preempt
R2(config-if)#vrrp 1 timers learn
R2(config-if)#vrrp 1 ip 1.1.10.253
R2(config)#track 21 int e0/1 line-protocol 

 

# 설정 후 VPC1은 R1 , VPC2는 R2를 통해 L3-SW로 통신하는 모습이다.(아래 사진 참조)

 

 

 

 

 

 

 

 

 

 

 

 


[학습 목표]

1) VRRP는 왜 필요한가?

2) VRRP 패킷

3) VRRP 동작방법

1) VRRP는 왜 필요한가?

VRRP(Virtual Router Redundancy Protocol)는 네트워크의 게이트웨이 고가용성(High Availability)를 제공하기 위해 필요한 프로토콜이다.


1. 기본 게이트웨이 문제

네트워크에서 호스트(PC, 서버 등)는 기본 게이트웨이(Default Gateway)를 사용해 외부 네트워크와 통신한다.

일반적으로 기본 게이트웨이는 단일 라우터의 IP 주소를 사용한다.

만약 기본 게이트웨이가 작동하지 않으면 네트워크 트래픽이 차단되고, 호스트가 외부 네트워크와 통신할 수 없게 된다.

2. VRRP의 필요성

기본 게이트웨이 장애 시 대체 게이트웨이를 제공하여 네트워크 가용성을 보장.

네트워크 트래픽을 중단 없이 유지하고, 장애 시 자동으로 대체 라우터를 활성화.

수동 설정이나 재구성을 요구하지 않아 관리 복잡성을 감소.

 

VRRP와 HSRP 차이

항목 VRRP HSRP
표준 IETF 표준 (RFC 5798) Cisco 독점 프로토콜
가상 IP 소유권 Master가 Virtual IP 소유 Active 라우터가 Virtual IP 소유
다중 벤더 지원 지원 Cisco 디바이스만 지원

2) VRRP 패킷

VRRP(Virtual Router Redundancy Protocol)는 라우터 간에 가상 라우터 상태를 교환하기 위해 VRRP Advertisement 패킷을 사용합니다. VRRP 패킷은 IP 패킷 내부에 포함되어 전송되며, Master 라우터가 주기적으로 Backup 라우터들에게 자신의 상태를 알리는 데 사용됩니다.


 

1. VRRP 패킷 구조

필드 이름 크기 설명
Version 4 VRRP 버전 (현재 대부분 VRRPv2 또는 VRRPv3).
Type 4 패킷 유형. 현재 VRRP에서는 항상 1(Advertisement)로 설정.
Virtual Router ID (VRID) 8 가상 라우터의 고유 ID. (1~255)
Priority 8 Master를 결정하는 우선순위 (0~255, 기본값: 100).
Count IP Addresses 8 Virtual IP의 개수. (1개 이상 설정 가능)
Advertisement Interval 8 Master가 광고 주기로 사용하는 간격 (단위: 초).
Checksum 16 VRRP 헤더의 무결성 검증을 위한 체크섬 값.
IP Address(es) 32 × N Virtual IP 주소 목록. (N = Virtual IP의 개수)
Authentication Data 64 인증 정보를 포함 (대부분 미사용).
R2 e0/0에서 와이어샤크로 떠본 패킷

R1(config-if)#vrrp 1 timers advertise 3

설정으로 Advertise Interver이 3인 모습을 확인할 수 있다.(Adver Int 디폴트 값은 1)

또, HSRP에서는 멀티캐스틀 주소가 224.0.0.2 였었는데 VRRP에서는 224.0.0.18인 것을 확인할 수 있다.

2. 주요 VRRP 패킷 필드 설명

Version

VRRP의 버전 정보를 나타낸다.

현재 사용 가능한 버전:

VRRPv2: IPv4 지원 (RFC 3768).

VRRPv3: IPv4와 IPv6 모두 지원 (RFC 5798).

 

Type

VRRP 패킷 유형을 지정.

현재 Type 값은 항상 1(Advertisement)로 고정.

 

VRID(Virtual Router ID):

VRRP 그룹을 식별하기 위한 ID.

같은 네트워크 세그먼트에서 여러 VRRP 그룹이 존재할 수 있으며, 각 그룹은 고유한 VRID를 가진다.

범위: 1~255.

 

Priority

Master 라우터를 결정하는 데 사용되는 값.

값이 클수록 우선순위가 높음.

 

Count IP Addresses

Virtual IP의 개수를 나타냄.

대부분의 경우 1개로 설정되지만, 복수의 Virtual IP를 지원.

 

Advertisement Interval

Master가 광고 메시지를 전송하는 주기.

기본값은 1초이며, 설정에 따라 변경 가능.

 

Checksum

VRRP 헤더와 데이터를 보호하는 필드.

수신된 패킷이 손상되었는지 확인하는 데 사용.

 

IP Address(es):

Virtual IP 주소 목록.

호스트들은 이 IP를 기본 게이트웨이로 사용.

 

Authentication Data

과거 VRRPv2에서는 인증 필드로 사용되었으나, VRRPv3부터는 제거.

대부분 "0"으로 채워짐.

 

VRRP 실습 토폴로지

3) VRRP 동작 방법

VRRP는 하나의 가상 IP(Virtual IP)와 여러 라우터가 결합하여 기본 게이트웨이를 제공합니다. 라우터 간 역할을 분담하여 장애 발생 시 대체 기능을 수행한다.


1. VRRP 구성 요소

Virtual IP

VRRP에 참여하는 라우터들이 공유하는 가상 게이트웨이 IP 주소.

이 가상 IP는 네트워크의 호스트들이 기본 게이트웨이로 설정.

Master Router

Virtual IP를 소유하며, 실제로 트래픽을 처리하는 라우터.

VRRP 광고(Advertisement) 메시지를 주기적으로 전송하여 자신이 활성 상태임을 알림.

Backup Router(s):

대기 상태로 Master 라우터를 모니터링.

Master 라우터가 응답하지 않으면 자동으로 Master 역할을 수행.

 

2. VRRP 동작 과정

 

초기 상태

VRRP 그룹이 설정되면 라우터 간 우선순위(Priority)를 비교하여 Master 라우터가 결정된다.

기본 우선순위는 100이며, 가장 높은 우선순위를 가진 라우터가 Master가 된다. (우선순위가 같으면 IP 주소가 높은 라우터가 Master가 된다.)

R1(config-if)#vrrp 1 priority 109

R2(config-if)#vrrp 2 priority 109

위 설정을 통해 VRRP 1 그룹의 Master는 R1이 되고, VRRP 2 그룹의 Master는 R2가 된다.(아래 그림 참조)

VRRP brief

Master 라우터 동작

Master는 VRRP Advertisement 메시지를 전송하여 자신의 상태를 알린다.

기본 광고 주기는 1초(1000ms)이며, 이 주기를 Backup 라우터가 모니터링한다.

 

Backup 라우터 동작

Master의 VRRP 광고를 수신하며 상태를 모니터링.

Master의 광고 메시지가 사라지면(기본 3초 이상) Backup 라우터 중 우선순위가 가장 높은 라우터가 Master 역할을 승계.

 

Master 라우터 장애 시

Backup 라우터가 새로운 Master로 승격되고, 호스트들은 중단 없이 트래픽을 전송.

기존 Master 라우터가 복구되면 우선순위가 더 높은 라우터는 다시 Master 역할을 수행(Preempt 모드 활성화 시).

R2(config-if)#vrrp 1 preempt

위 설정을 통해 R1 -> L3-SW 장애시 R2가 VRRP 그룹1 Master가 된 모습이다.

당연히 SW1 Mac table도 VRRP 그룹1 경로가 e0/2 -> e0/3 으로 바뀐 모습니다.(아래 그림 참조)

R1 e0/1 장애 후 SW1 Mac table
R1 e0/1 장애 후 R2 VRRP brief
 

3. VRRP 특징 및 주요 옵션

Preempt 모드

우선순위가 더 높은 Backup 라우터가 Master로 복귀하도록 설정.

기본적으로 활성화되어 있음.

 

Timers Learn

Backup 라우터가 Master의 타이머를 학습하도록 설정.

 

다중 그룹 구성

하나의 네트워크에서 여러 VRRP 그룹을 생성하여 다양한 가상 게이트웨이 구성 가능.


Key point

가상 IP를 통해 Master와 Backup 간 역할 분담 및 광고 메시지를 기반으로 동작하며, 자동 장애 복구를 제공한다.

 

'네트워크' 카테고리의 다른 글

DHCP(Dynamic Host Configuration Protocol)  (0) 2024.11.26
라우터 ACL(Access Control List)  (0) 2024.11.22
HSRP(Hot Standby Routing Protocol)  (0) 2024.11.19
Etherchannel  (0) 2024.11.17
MST(Multiple Spanning Tree)  (0) 2024.11.09