FHRP(Firsthop Redundancy Protocol)
게이트웨이 이중화 프로토콜로 하나의 네트워크에 복수의 게이트웨이를 사용할 수 있게 되고(하나의 게이트웨이를 이용하는거임) 사용하던 게이트웨이의 장애로 통신이 불가능 할때 여분의 게이트웨이가 그 자리를 대신해 끊임없이 통신할 수 있게 해주는 고가용성 솔루션 중 하나다.
호스트는 가상의 게이트웨이를 게이트웨이라고 알게되고 가상게이트웨이로 묶인 라우터들의 그룹이 이를 처리해주는 방식이다.
종류
프로토콜 | 특징 |
HSRP | cisco 전용 프로토콜 |
VRRP | RFC 3768의 IETF에서 정의한 세계 표준 프로토콜 |
GLBP | 다른 종류의 프로토콜들과 다르게 백업 게이트웨이가 아닌 로드 밸런싱을 통해 FHRP를 구현하는 프로토콜 |
HSRP(Hot Standby Routing Protocol)
주게이트와 백업게이트웨이 양쪽에 똑같은 가상 IP, MAC(0000.0C[VENDER ID]07.AC01[GROUP NUM]) 을 사용하며 호스트들은 라우터들의 가상 IP를 게이트웨이로 가진다.
2개 이상의 라우터들을 가상의 논리적 라우터(STAND BY GROUP)로 묶어 각각 라우터의 운선순위에 맞게 active,standby로 나뉜게 된다. 이때 우선순위가 더 높은 라우터가 ACTIVE라우터로 선출된다.
#우선순위가 같다면 더 높은 IP를 가진 라우터가 ACTIVE로 선정된다.
평소에는 ACTIVE라우터를 이용하여 통신하고 ACTIVE 라우터에서 장애를 발견할 시 ACTIVE라우터의 운선순위를 낮춰 STANDBY 라우터가 ACTIVE라우터로 승격되어 사용하게 된다. 또한 주기적으로 hello 메세지를 보내는데 이때 ACTIVE 라우터에서 응답이 없다면 STANDBY가 ACTIVE로 승격된다.
UDP 1985을 이용하여 통신하며 우선순위를 통해 STANDBY,ACTIVE라우터를 정하는데 같은 우선순위를 가질 시 높은 IP를 가진 인터페이스가 ACTIVE라우터가 된다.
HSRP 상태 메세지
State | Explanation |
Initial | HSRP가 시작되는 첫 번째 상태, HSRP를 구성한 직후 또는 인터페이스가 활성화된 직후에 이를 볼 수 있음 |
Listen | 라우터는 가상 IP 주소를 알고 있으며 다른 HSRP 라우터의 Hello 메시지를 수신함 |
Speak | 라우터는 Hello 메세지지를 보내고 어떤 라우터가 활성 또는 대기 상태가 상태가 될지 선정에 참여한다 |
Standby | 라우터는 StandBy 라우터 상태임 계속해서 hello 메세지를 보내고 active router가 fail 즉 사라진다면 승격됨 |
Active | active라우터로써 트래픽을 전송하게 되는 라우터 |
버전
HSRPv1 | HSRPv2 | |
그룹 번호 | 0 – 255 | 0 – 4095 |
가상 MAC 주소 | 0000.0c07.acXX(XX = 그룹 번호) | 0000.0c9f.fxxx(XXX = 그룹 번호) |
멀티캐스트 주소 | 224.0.0.2 | 224.0.0.102 |
주의할 점
- HSRP는 스위치에도 구성할 수 있기 때문에 구성 시 VLAN이 필요함, 또한 그룹을 여러개로 나누기 위해서 VLAN으로 설정이 필요하기도 하다. 인터페이스에 직접 설정할 수 있지만 단 하나의 그룹으로 밖에 사용하지 못하고 VLAN이 설정된 환경에선 이용할 수 없다.
- preemption(선점권)을 설정하지 않으면 한번 active로 선정된 라우터는 사고 발생 전까지 active 상태를 유지한다.
- 가상으로 생성한 IP를 호스트의 게이트웨이로 적용해야한다.
설정
Object tracking - 인터페이스
#장애 감지 track 설정을 해야함
#ip sla를 이용해서 지정할 수도 있고 회선 상의 문제를 통해 확인할 수 있음
track [num] interface [int] line protocol
#직접 연결된 회선 상의 문제 탐지
#router
int [interface]
encapsulation dot1q [vlan num]
#vlan 구성을 위해서 필요함
ip add [ip address]
standby [num] ip [ip address]
#hsrp 그룹과 가상 게이트웨이로 사용할 ip 지정
standby [num] priority [num]
#standby, active 상태를 정하기 위한 우선순위 설정
standby [num] timers [num] [num]
#초 단위로 hello / hold time 설정 hold time의 default = 10초
#msec 명령어를 통해 밀리초 단위로도 선정 가능하다.
standby [num] track [num] decrement [num]
#문제 발생시 줄일 우선순위 값
stadnby [num] preempt delay minimum [num]
#장애 복구 후 우선순위 복구 후 재가동 시간
#preempt 설정 없이는 다시 active로 변경되지 않음
standby version [num]
#version 선택 -> 1, 2 있음
show standby
#설정 확인
standby 1 authentication md5 key-string cisco
#라우팅 인증처럼 인증처리해서 암호화할 수 있음
Object tracking - 종단간 연결
인터페이스를 통해 설정하게 되면 좋긴 하지만 종단간 연결에서 중간의 문제가 발생했을때 대응할 수 없음 IP SLA를 설정해주어 해결할 수 있음
ip sla [num]
icmp-echo [ip add]
frequency [num]
#SLA 생성
ip sla schedule [num] start-time now life forever
#SLA 시작
track [num] ip sla [num]
#SLA를 TRACK으로 지정해 SLA 사고 발생 감지 시 작동
스위치 구성
스위치에서는 svi 즉 vlan interface에 설정하면 되는 것 외에는 별 차이 없다.
VRRP(Virtual Router Redundancy Protocol)
HSRP VS VRRP
HSRP | VRRP | |
표준 | 시스코 독점 | IETF - RFC 3768 |
그룹 수 | 최대 16개 | 최대 255개 |
활성/대기 | 활성 1개, 대기 1개 및 여러 후보 확보 | 1개의 활성 및 여러 백업 |
가상 게이트웨이 IP 주소 | 인터페이스의 실제 IP 주소와 다름 | 인터페이스의 실제 IP 주소와 같은 수 있음 |
멀티캐스트 주소 | 224.0.0.2 | 224.0.0.18 |
감지 개체 | 인터페이스 또는 객체 | 객체 |
기본 타이머 | HELLO 3 SEC, HOLD TIME 10 SEC | HELLO TIME 1 SEC, HOLD TIME 3 SEC |
프로토콜 간 통신 인증 | 지원함 | RFC 3768에서 지원되지 않음 |
사실 두 프로토콜은 크게 차이가 없다 이정도의 차이를 가진 비슷한 프로토콜이라고 생각하면 편하다.
또한 vrrp의 가상 mac 주소는 0000.5e00.01[GRoup num]을 사용한다.
HSRP의 ACTIVE → MASTER , STANDBY → BACKUP으로 변경되면 단어만 다르지 같은 원리로 프로토콜이 동작한다
설정
#장애 감지 track 설정을 해야함
#ip sla를 이용해서 지정할 수도 있고 회선 상의 문제를 통해 확인할 수 있음
track [num] interface [int] line protocol
#직접 연결된 회선 상의 문제 탐지
int [interface]
encapsulation dot1q [vlan num]
#vlan 구성을 위해서 필요함
ip add [ip address]
vrrp [num] ip [ip address]
#vrrp 그룹과 가상 게이트웨이로 사용할 ip 지정
vrrp [num] priority [num]
#vrrp, active 상태를 정하기 위한 우선순위 설정
vrrp [num] timer adverties [num]
#vrrp 광고 주기를 설정
vrrp [num] track [num] decrement [num]
#문제 발생시 줄일 우선순위 값
vrrp [num] preempt delay minimum [num]
#장애 복구 후 우선순위 복구 후 재가동 시간
#preempt 설정 없이는 다시 active로 변경되지 않음
GLBP(Gateway Load Balancing Protocol)
GLBP의 가장 큰 차이는 HSRP/VRRP가 그룹을 생성해서 가상 게이트웨이를 관리하지만 GLBP는 그런 가상 그룹 없이 로드밸런싱을 수행한다는 것이다.
GLBP를 실행하는 모든 장치는 AVG(Active virtual gateway)를 선택합니다. GLBP를 실행하는 단일 그룹에는 하나의 AVG만 있지만 AVG가 실패하면 다른 장치가 이 규칙을 대신한다. AVG의 역할은 GLBP를 실행하는 다른 모든 장치에 가상 MAC 주소를 할당하는 것이다. 모든 장치는 AVG를 포함한 AVF(Active Virtual Forwarder)가 됩니다.
컴퓨터가 ARP 요청을 보낼 때마다 AVG는 사용 가능한 AVF의 가상 MAC 주소 중 하나로 응답한다. 이 메커니즘 때문에 GLBP를 실행하는 모든 장치는 IP 패킷을 전달하는데 사용된다.
로드 밸런싱에는 여러가지 방법이 있다
- 라운드 로빈 : 라운드 로빈 처럼 AVF1,AVF2,AVF3의 MAC 주소를 전달하고 다시 AVF1등으로 돌아간다
- 호스트 종속 : 호스트는 도달 가능한 한 AVF의 동일한 가상 MAC 주소를 사용할 수 있다
- 가중치 : 일부 AVF가 다른 AVF보다 더 많은 트래픽을 전달하도록 하려면 다른 가중치를 할당할 수 있다
tracking
기본적인 내용은 다른 프로토콜과 같지만 HSRP,VRRP는 임계값을 두어 그 값을 비교하면서 마스터 상태와 백업 상태를 구분하게 되는데 GLBP는 다르게 작동한다. (정확히는 사고 발생시 상태 변화에서 다르게 작동한다는 뜻) GLBP의 가중치는 장치가 AVF일 수 있는지 여부를 결정하는데 사용된다.
설정
int [num]
ip add [ip addresses]
glbp [num] ip [virtual ip]
glbp [num] priority [num]
glbp [num] preempt
glbp [num] weighting [priority] lower [min] upper [max]
#가중치를 줄여서 lower보다 낮으면 협상에서 제외 즉 마스터에서 제외 upper보다 높아지면 다시 협상
glbp [num] weighting track [num] decrement [num]
나머지 명령어 같음
GLBP가 사용하는 가상 MAC 주소는 0007.b400.XXYY(X = GLBP 그룹 번호, Y = AVF 번호) 입니다.
'네트워크 > 네트워크 일반' 카테고리의 다른 글
Reflexive ACL(가난한 자의 stateful inspection) (0) | 2023.06.18 |
---|---|
VLAN hopping(DTP,Native VLAN, Switch spoofing, Double tagging attack) (0) | 2023.06.02 |
OSPF STUB AREA (0) | 2023.05.13 |
OSPF deep dive 1(dr,bdr,drother,passive interface) (0) | 2023.04.25 |
cisco password retry lock out, cisco 패스워드 접속 실패 정책 (0) | 2023.03.14 |