Network & Server Factory

개인 공부 기록

Network/패킷트레이서

[Packet Tracer] 프레임 릴레이 허브 앤 스포크에서 Split Horizon 문제 확인하고 해제하기

1nfra 2020. 9. 9. 01:33
프레임 릴레이 허브 앤 스포크 구조(R2가 허브)에서 RIPv2를 돌리자, R1은 R3의 네트워크를 배우지 못했습니다. 허브 R2가 스플릿 호라이즌 때문에 같은 인터페이스로 경로를 되돌려 보내지 않았기 때문이며, R2에서 no ip split-horizon을 설정해 해결했습니다.

1. 문제 상황

스플릿 호라이즌은 한 인터페이스에서 배운 경로를 같은 인터페이스로 다시 광고하지 않아, 거리 벡터 라우팅 프로토콜의 루프를 막는 기술입니다.

프레임 릴레이 허브 앤 스포크 구조

 

그런데 프레임 릴레이처럼 물리 인터페이스 하나로 여러 라우터와 연결된 구조에서는 문제가 됩니다. 허브는 스포크 R1에게서 배운 경로를 같은 인터페이스에 붙어 있는 다른 스포크 R3에게 전달하지 못하고, 반대 방향도 마찬가지입니다. 이 문제는 스플릿 호라이즌을 끄거나, 서브인터페이스로 점대점(point-to-point) 구조를 만들어 해결합니다.

원래는 프레임 릴레이 스위치로 2811 라우터를 쓰지만, 패킷트레이서에서는 관련 명령을 지원하지 않아 PT-Cloud를 사용했습니다.

2. 프레임 릴레이 기본 문법

R1(config-if)#encapsulation frame-relay
R1(config-if)#frame-relay map ip 상대IP DLCI broadcast
R1(config-if)#no shutdown

3. 토폴로지와 설정

실습 토폴로지

라우터 LAN(gi0/0) Serial0/0/0
R1 10.0.0.1/24 192.168.0.1/24
R2(허브) 20.0.0.1/24 192.168.0.2/24
R3 30.0.0.1/24 192.168.0.3/24

3.1 R1

R1(config)#int gi0/0
R1(config-if)#ip add 10.0.0.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#int se0/0/0
R1(config-if)#ip add 192.168.0.1 255.255.255.0
R1(config-if)#encapsulation frame-relay
R1(config-if)#frame-relay map ip 192.168.0.2 102 broadcast
R1(config-if)#frame-relay map ip 192.168.0.3 102 broadcast
R1(config-if)#no shutdown
R1(config-if)#router rip
R1(config-router)#version 2
R1(config-router)#network 10.0.0.0
R1(config-router)#network 192.168.0.0
R1(config-router)#no auto-summary

3.2 R2

R2(config)#int gi0/0
R2(config-if)#ip add 20.0.0.1 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#int se0/0/0
R2(config-if)#ip add 192.168.0.2 255.255.255.0
R2(config-if)#encapsulation frame-relay
R2(config-if)#frame-relay map ip 192.168.0.1 201 broadcast
R2(config-if)#frame-relay map ip 192.168.0.3 203 broadcast
R2(config-if)#no shutdown
R2(config-if)#router rip
R2(config-router)#version 2
R2(config-router)#network 20.0.0.0
R2(config-router)#network 192.168.0.0
R2(config-router)#no auto-summary

3.3 R3

R3(config)#int gi0/0
R3(config-if)#ip add 30.0.0.1 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#int se0/0/0
R3(config-if)#ip add 192.168.0.3 255.255.255.0
R3(config-if)#encapsulation frame-relay
R3(config-if)#frame-relay map ip 192.168.0.2 302 broadcast
R3(config-if)#frame-relay map ip 192.168.0.1 302 broadcast
R3(config-if)#no shutdown
R3(config-if)#router rip
R3(config-router)#version 2
R3(config-router)#network 30.0.0.0
R3(config-router)#network 192.168.0.0
R3(config-router)#no auto-summary

3.4 프레임 릴레이 스위치(PT-Cloud)

각 시리얼 포트에 DLCI를 지정하고, 구별하기 쉬운 이름으로 연결(PVC)을 설정합니다.

프레임 릴레이 스위치 설정

4. 문제 확인

R2에서 R1으로 ping은 잘 갑니다. 그런데 R1의 라우팅 테이블에는 RIPv2를 설정했는데도 R3의 네트워크(30.0.0.0)가 없습니다. R3가 R2로 보낸 경로를 R2가 스플릿 호라이즌 때문에 같은 인터페이스(se0/0/0)로 R1에게 전달하지 않았기 때문입니다.

R1 라우팅 테이블: 30.0.0.0 없음

 

허브인 R2에는 모든 경로가 들어와 있습니다.

R2 라우팅 테이블

5. 해결

허브 R2의 시리얼 인터페이스에서 스플릿 호라이즌을 끕니다.

R2(config)#int se0/0/0
R2(config-if)#no ip split-horizon

6. 결과

R1과 R3의 라우팅 테이블에 서로의 네트워크가 올라왔습니다.

R1, R3 라우팅 테이블

 

R1에서 R3로 ping도 성공합니다.

R1 → R3 ping 성공

7. 정리

  • 허브 앤 스포크 프레임 릴레이에서는 스플릿 호라이즌 때문에 스포크끼리 경로를 배우지 못할 수 있습니다.
  • 허브 인터페이스에서 no ip split-horizon으로 해결하거나, 서브인터페이스로 점대점 구조를 만듭니다.
  • 스플릿 호라이즌을 끄면 루프 방지 기능도 꺼지므로 필요한 인터페이스에서만 해제합니다.
728x90
서울
--:--:--
-전체 글
-카테고리
오늘 방문