Network 17. HSRP

2024. 3. 29. 09:09Network

먼저 HSRP를 알아보기 전에 FHRP라는 용어를 알고있자

 

FHRP는 

First Hop Redundancy Protocol 의 약자로

 

첫 번째 홉(First Hop)의 고가용성을 제공하는 여러 프로토콜을 통칭하는 말이다.

 

이를 사용하면 이중화된 게이트웨이 R1, R2 사이에서

합의된 가상의 IP 주소를 가지게된다.

 

그리고 PC들은 그 가상의 주소로 패킷을 전송하게 되며

실제론 R1, R2 중 한 라우터가 패킷을 받고있다.

R1이 실제 게이트 웨이일때

R1이 종료되더라도 R2로 자동으로 대체되는 고가용성을 제공한다!

 

 

HSRP

( Hot Standby Router Protocol )

cisco 전용 프로토콜로 활성/대기 상태로 배포된다.

R1(활성), R2(대기) 가 HSRP로 구성되어 있을때

R1에 장애 발생시 R2로 대체된다.

 

VRRP

 ( Virtual Router Redundancy  Protocol )

HSRP와 유사하지만 오픈 스탠다드 프로토콜이며

이역시 활성/대기 상태로 배포된다.

 

 

GLBP

 ( Gateway Load Balancing Protocol )

다수의 라우터에 활성/활성 방식의 부하분배를 지원한다.

설정과 트러블 슈팅이 약간 더 복잡하다.

 

 

 

 

 

 


이 중에서 많이 사용되는 HSRP에 대해서 알아보자

 

위의 예시처럼 구성해보겠다.

R4는 외부 네트워크( 인터넷 ) 

 

R1(config)#int f0/0
R1(config-if)#ip addr 10.10.10.2 255.255.255.0
R1(config-if)#no sh
R1(config)#int s0/0/0
R1(config-if)#ip add 1.1.1.2 255.255.255.0
R1(config-if)#no sh

R2(config)#int f0/0
R2(config-if)#ip addr 10.10.10.3 255.255.255.0
R2(config-if)#no sh
R2(config-if)#int s0/0/0
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#no sh

R3(config)#int s0/0/0
R3(config-if)#ip add 1.1.1.1 255.255.255.0
R3(config-if)#no sh
R3(config-if)#int s0/0/1
R3(config-if)#ip add 2.2.2.1 255.255.255.0
R3(config-if)#no sh
R3(config)#int se0/2/0
R3(config-if)#ip add 3.3.3.2 255.255.255.0
R3(config-if)#no sh

R4(config)#int se0/0/0
R4(config-if)#ip add 3.3.3.1 255.255.255.0
R4(config-if)#no sh

각각의 라우터에 IP를 부여해주자

 

 

이후 HSRP를 구성하자

R1(config)#int f0/0
R1(config-if)#standby 1 ip 10.10.10.1 >>가상 IP

R2(config)#int f0/0
R2(config-if)#standby 1 ip 10.10.10.1 >>가상 IP

간단하다!

이제 PC에서 ping을 10.10.10.1로 전송해보자

이상없이 전송된다.

 

라우터간의 OSPF를 사용해 다이나믹 라우팅도 설정해주자

R1(config)#router ospf 1
R1(config-router)#network 10.10.10.0 0.0.0.255 area 1
R1(config-router)#network 1.1.1.0 0.0.0.255 area 1


R2(config)#router ospf 1
R2(config-router)#network 10.10.10.0 0.0.0.255 area 1
R2(config-router)#network 2.2.2.0 0.0.0.255 area 1

R3(config)#router ospf 1
R3(config-router)#network 1.1.1.0 0.0.0.255 area 1
R3(config-router)#network 2.2.2.0 0.0.0.255 area 1
R4(config-router)#network 3.3.3.0 0.0.0.255 area 1

R4(config)#router ospf 1
R4(config-router)#network 3.3.3.0 0.0.0.255 area 1

이후에 1.1.1.1 , 2.2.2.1 으로 ping에 이상없이 전송되는 걸 알 수 있다!!

 

가상 IP인 10.10.10.1 로도 ping이 잘 가는걸 확인했으니

HSRP 정보를 R1, R2에서 확인해보자!

R1#show standby  >>>>>>>>>>>>>>>>>>>> HSRP 상태 확인 명령어
FastEthernet0/0 - Group 1
  State is Active  >>>>>>>>>>>>>>>>>>활성 상태
    4 state changes, last state change 00:20:47
  Virtual IP address is 10.10.10.1  >>>>>>>>>>>>>>>>>> 가상 IP
  Active virtual MAC address is 0000.0C07.AC01  >>>>>>>>>>>>>>>>>>가상 MAC 주소
    Local virtual MAC address is 0000.0C07.AC01 (v1 default)
  Hello time 3 sec, hold time 10 sec
    Next hello sent in 0.05 secs
  Preemption disabled
  Active router is local
  Standby router is 10.10.10.3
  Priority 100 (default 100)
  Group name is hsrp-Fa0/0-1 (default)
  
  
R2#show standby  >>>>>>>>>>>>>>>>>>>> HSRP 상태 확인 명령어
FastEthernet0/0 - Group 1
  State is Standby  >>>>>>>>>>>>>>>>>>대기 상태
    3 state changes, last state change 00:22:11
  Virtual IP address is 10.10.10.1  >>>>>>>>>>>>>>>>>>가상 IP
  Active virtual MAC address is 0000.0C07.AC01  >>>>>>>>>>>>>>>>>>가상 MAC 주소
    Local virtual MAC address is 0000.0C07.AC01 (v1 default)
  Hello time 3 sec, hold time 10 sec
    Next hello sent in 1.81 secs
  Preemption disabled
  Active router is 10.10.10.2
  Standby router is local
  Priority 100 (default 100)
  Group name is hsrp-Fa0/0-1 (default)

상태 확인도 이상 없는걸 볼 수 있다!

 

이제 정말로 이중화가 잘 되어있는지 확인하자!!

먼저 한 PC에서 외부 네트워크 쪽으로 

-t 옵션을 이용해 계속 ping을 보내자

 

그리고 R1 ( Active )의 Running-config를 저장하고 종료해보자!

패킷 트레이서에서

피지컬 버튼을 직접 눌러주면 강제 종료가 가능

( 실무에서는 절대 금지 하면 잘릴지도 모릅니다..)

 

위처럼 잠시 끊겼다가 

아무런 조치를 하지 않아도

다시 ping이 보내진다면 성공이다!

 

또한 R2를 확인해보면

%HSRP-6-STATECHANGE: FastEthernet0/0 Grp 1 state Standby -> Active

R2#show standby
FastEthernet0/0 - Group 1
  State is Active >>>>>>>>>>>>>>>>>>>> R2가 Active로 변해있는 것을 볼 수 있다!!
    4 state changes, last state change 00:00:28
  Virtual IP address is 10.10.10.1
  Active virtual MAC address is 0000.0C07.AC01
    Local virtual MAC address is 0000.0C07.AC01 (v1 default)
  Hello time 3 sec, hold time 10 sec
    Next hello sent in 2.389 secs
  Preemption disabled
  Active router is local
  Standby router is 10.10.10.2
  Priority 100 (default 100)
  Group name is hsrp-Fa0/0-1 (default)

정말 신기하게도 R2가 Active로 변해있고

고가용성을 유지하면서 ping이 계속 보내지는 걸 볼 수 있다!

 

R1#show standby
FastEthernet0/0 - Group 1
  State is Standby  >>>>>>>>>>>>>>>>>>>>>>>>>>>> R1은 Standby로 변해있다!
    8 state changes, last state change 00:00:51
  Virtual IP address is 10.10.10.1
  Active virtual MAC address is 0000.0C07.AC01
    Local virtual MAC address is 0000.0C07.AC01 (v1 default)
  Hello time 3 sec, hold time 10 sec
    Next hello sent in 2.318 secs
  Preemption disabled
  Active router is 10.10.10.3
  Standby router is local
  Priority 100 (default 100)
  Group name is hsrp-Fa0/0-1 (default)

R1은 대기 상태로 변해있다!

 

 

우선순위와 선점형

HSRP는 수동 우선 순위 값을 지정해

활성 라우터를 지정할 수있다.

 

따로 지정해주지 않는다면 우선순위 값은

기본적으로 100이다 ( 범위 = 0 ~ 255 )

R1(config)#int f0/0
R1(config-if)#standby 1 priority 200
우선 순위 값 200으로 지정!


R1(config-if)#do show standby
FastEthernet0/0 - Group 1
  State is Standby
    8 state changes, last state change 00:00:51
  Virtual IP address is 10.10.10.1
  Active virtual MAC address is 0000.0C07.AC01
    Local virtual MAC address is 0000.0C07.AC01 (v1 default)
  Hello time 3 sec, hold time 10 sec
    Next hello sent in 2.069 secs
  Preemption disabled
  Active router is 10.10.10.3
  Standby router is local
  Priority 200 (configured 200) >>>>>>>>>>>>>>>>>>>>>>우선순위 값 200 확인
  Group name is hsrp-Fa0/0-1 (default)
R1(config-if)#

 

이렇게 되면 HSRP 순서와 상관 없이

특정 라우터를 Active 라우터로 지정할 수 있다

 

 

 

그리고 선점형이 있는데

 

선점형은 Active (R1) / standby (R2) 상태인 두 라우터가

장애 문제로

standby (R1) / Active (R2)로 변경된 뒤

R1 라우터가 복구 되면 다시 Active 라우터가 되는 것이다!

R1(config-if)#standby 1 preempt 
선점형 선언

 %HSRP-6-STATECHANGE: FastEthernet0/0 Grp 1 state Sta
 
 
R1(config-if)#do show standby
FastEthernet0/0 - Group 1
  State is Active
    9 state changes, last state change 00:26:54
  Virtual IP address is 10.10.10.1
  Active virtual MAC address is 0000.0C07.AC01
    Local virtual MAC address is 0000.0C07.AC01 (v1 default)
  Hello time 3 sec, hold time 10 sec
    Next hello sent in 1.742 secs
  Preemption enabled >>>>>>>>>>>>>>>>>>>>>>>>>>선점형이 활성화 되어있다!
  Active router is local
  Standby router is 10.10.10.2, priority 100 (expires in 0 sec)
  Priority 200 (configured 200)
  Group name is hsrp-Fa0/0-1 (default)

 

이후 설정을 저장하고

다시 R1을 재부팅 시켜보자

%HSRP-6-STATECHANGE: FastEthernet0/0 Grp 1 state Standby -> Active

%HSRP-6-STATECHANGE: FastEthernet0/0 Grp 1 state Speak -> Standby

이후 R2를 지켜보면

Active에서 Standby로 다시 돌아오는 걸 볼 수 있다.

show standby 명령어로 보아도 똑같다!

 

 

하지만 preempt를 사용하는걸 권장하진 않는다.

 

이유는

R1이 간헐적으로 끊기는 상황이라면

사용자이 이용하는 서비스가 

계속해서 중단되고 복구되는 상황이 반복될 것이기 때문!

'Network' 카테고리의 다른 글

syslog  (0) 2024.11.19
SNMP  (0) 2024.11.14
Network 16. VTP  (0) 2024.03.28
Network 15 . VLAN  (0) 2024.03.27
Network 14. OSPF 심화  (0) 2024.03.19