VRRP (Virtual Redundancy Routing Protocol)


VRRP (라우터 다중화 프로토콜, 라우터 장애 복구 프로토콜)

1. VRRP 란?

  • 여러 대의 gateway(router)를 그룹으로 묶어, 이에 하나의 가상 IP 주소를 부여하고,
    - 만약, 마스터로 지정된 gateway에서 장애가 발생시,
    - VRRP 그룹 내 백업 gateway가 마스터로 자동 전환되는 프로토콜을 말함
  • 1998년 IBM에서 개발된 VRRP를 IETF(Internet Engineering Task Force)에서 국제표준으로 채택
    - HSRP는 1994년에 Cisco에서 발표
  • HSRP(First Hop Redundancy Protocol, 게이트웨이 이중화 프로토콜): Cisco 전용
  • GLBP(Gateway Load Balancing Protocol): Cisco 전용
  • VRRP는 Gateway(router) 이중화 프로토콜이 VRRP이다.
    Gateway(게이트웨이)란? 다른 네트워크 사이의 통신을 가능하게 해주는 것이다.
    PC나 서버와 같이 말단에 위치한 단말기(End Device)들은 라우팅 기능이 없는 장비들로 기본 게이트웨이(Default Gateway)를 통해 외부 네트워크와 통신한다.
  • CARP(Common Address Redundancy Protocol): VRRP의 라이센스를 피해서 구현한게 CARP다.

2. Gateway 장비 우선순위 선출 기준

  • VRRP Priority (우선순위) 값이 큰 장비 (기본값 : 100)
  • Real IP의 주소가 큰 장비

3. 상태확인(health check) 방법

  • 1) 마스터는 hello(advertisement) interval(알림 주기, 기본 1초)로 VRRP advertisement packet(알림 패킷)을 대기상태(standby) 장비들에게 보냅니다.
  • 2) 대기상태 장비는 마스터로 부터 알림 패킷을 받는 동안은 마스터가 살아있다고 판단
  • 3) 마스터로 부터 일정 시간(dead interval) 동안 패킷이 수신되지 않으면 마스터 다운상태로 판단
  • 4) 대기상태 장비는 우선순위 선출 기준에 따라 마스터가 되고 VRRP 알림 패킷과 GARP(gratuitous ARP) 패킷을 전송한다.
    - GARP를 수신한 노드들은 받은 IP와 MAC 주소를 테이블에 저장한다.
    - gratuitous 그라튜테스: 불필요한, 쓸데없는(unnecessary)
  • tcpdump로 마스터에서 VRRP 패킷을 확인하면 224.0.0.18:112(port)목적지로 나가는 것을 확인할 수 있다.
    - 224.0.0.18 은 멀티캐스트 주소로 VRRP를 위해 예약된 주소이다.

용어 설명

  • Hello(advertisement) interval: 알림 패킷을 보내는 간격(초)
  • Dead interval: 대기상태 장비는 이 시간 동안 알림 패킷이 오지 않으면 마스터가 다운된 것으로 간주한다.
    이 값이 설정되어 있지 않으면 hello interval의 3배로 한다. 즉, hello interval이 1초이면, dead interval은 3초이다.
  • Preempt: 선점. 먼저 차지하다. 마스터가 다시 살아나면 마스터가 되겠다. 실제 사례에서는 선점을 사용하지 않는 것이 더 낫다.
  • Preempt delay: 다시 마스터가 되는 대기 시간(초)
  • Multicast IP: 224.0.0.18
  • Port: 112
  • VirtualMac Address: 0000.5e00.01(NN) (NN은 Group Number)

출처/참고자료


Email 답글이 올라오면 이메일로 알려드리겠습니다.

혹시 처음이세요?
레디스게이트에는 레디스에 대한 많은 정보가 있습니다.
레디스 소개, 명령어, SQL, 클라이언트, 서버, 센티널, 클러스터 등이 있습니다.
혹시 필요한 정보를 찾기 어려우시면 redisgate@gmail.com로 메일 주세요.
제가 찾아서 알려드리겠습니다.
 
close
IP를 기반으로 보여집니다.