728x90
1. RIP (Routing Information Procotol)
Distance Vector 알고리즘을 사용하는 대표적인 라우팅 프로토콜로, 클래스풀 방식이며 소규모 네트워크나 변화가 크지 않은 환경에서 주로 사용된다.
1) Distance Vector 알고리즘
- 목적지까지의 최적 경로를 판단할 때 속도가 아닌 라우터 수(hop 수)를 기준으로 함
- 네트워크에 변화가 없어도 30초마다 전체 라우팅 테이블을 브로드캐스트 방식으로 전파
1-1) 루프 현상
RIP은 주기적인 브로드캐스트로 인해 네트워크 장애가 발생하더라도 정보가 업데이트되기 전까지는 해당 경로가 살아있는 것으로 인식될 수 있어 루프 현상이 발생할 수 있다.
이를 방지하기 위해 여러 가지 기법이 사용된다.
- Hop Count Limit : 최대 홉 카운트를 15로 제한. 16은 도달 불가능한 상태로 간주.
- Split-Horizon : 수신한 인터페이스를 표기하고 같은 정보가 동일한 인터페이스로 나가지 못하게 차단.
- Route Poison : HOP=16 정보를 FLASH UPDATE를 실시하여 모든 RIP 라우터에게 알려줌.
- Reverse Poison : Route Poison에 대한 응답으로 대체 경로가 존재한다면 응답하지 않음.
- Hold Down Timer : 기본 180초, 라우팅 루프를 막기 위한 삭제 대기 시간. Hold Down Time이 지나게 되면 라우팅 테이블에서 삭제.
2) 클래스풀 라우팅 한계
- RIP는 클래스풀 라우팅 프로토콜이므로, 서브넷 마스크 정보를 포함하지 않음.
- 비연속 서브넷 구간에서는 정상적인 라우팅이 불가능.
- show ip route rip 명령어를 수행해도 서브넷 정보가 보이지 않을 수 있음.
- VLSM, CIDR과 같은 클래스리스 주소 구성 방식을 지원하지 않음.
VLSM (Variable Length Subnet Mask) : 하나의 네트워크 대역에서 필요한 만큼씩 다른 서브넷 마스크를 적용해 나누는 기술
CIDR (Classless Inter-Domain Routing) : 클래스 구분없이 IP 주소를 할당하고 라우팅할 때도 유연하게 묶는 방식
3) 기본 신뢰도와 메트릭 단위
- RIP의 메트릭(Metric): 목적지까지의 홉 수
- 최적 경로 선택 기준: 홉 수가 가장 적은 경로
- 홉 수의 범위: 1~15 (16은 장애 또는 도달 불가능 상태)
- 기본 신뢰도 (Administrative Distance): 120
4) 라우팅 업데이트 방식
- 인접 라우터 간에 주기적인 시간(30초)를 이용해 브로드캐스트 라우팅 업데이트를 반복적을 실시
- 불필요한 브로드캐스트로 성능 저하 발생 가능
- 이를 방지하기 위해 passive-interface를 설정하여 특정 인터페이스에서는 라우팅 정보를 전송하지 않도록 설정 가능
5) 균등 로드 분산 (Equal-Cost Load Balancing)
- 같은 홉수를 가진 여러 경로가 있을 경우, 최대 4개까지 라우팅 테이블에 등록 가능 (기본 설정).
- 등록된 경로들 간에 트래픽을 균등 분산.
- 그러나 홉 수만을 고려하기 때문에 속도가 느린 경로가 선택될 수 있는 한계가 있음.
- offset-list를 이용해 특정 경로의 메트릭 값을 조정함으로써 경로 우선순위 조정 가능.
6) RIP 타이머
- update 타이머(30초)
- 주기적인 라우팅 업데이트를 할 떄 사용하는 시간
- 인접 라우터에게 라우팅 업데이트를 수신하면 0초로 리셋
- invalid 타이머(180초)
- update 타이머 안에 라우팅 업데이트를 수신하지 못할 경우 최대 180초가 만료될 때까지 업데이트를 수신하기를 대기하는 시간
- 타이머가 만료될 때까지 라우팅 정보를 수신하지 못하면 Hold Down 상태로 전환
- Hold Down 타이머(180초)
- Invalid 타이머가 만료될 때까지 라우팅 정보를 수신하지 못하면 시작하는 경로 삭제 대기 상태
- 이 기간 동안에는 네트워크 장애시 잘못된 라우팅 정보로 인한 라우팅 루프가 발생하는 것을 방지하기 위해서 라우팅 업데이트를 수신하지 않음
- Hold Down 상태는 Flushed 타이머가 만료되거나 Hold Down 타이머가 완료되면 종료됨
- Flushed 타이머(240초)
- Hold Down 상태인 경로를 라우팅 테이블에서 제거하는 시간
- Flushed 타이머가 만료되면 Hold Down 상태인 경로는 라우팅 테이블에서 삭제
Invalid 타이머가 만료될 때까지 라우팅 정보를 수신하지 못하면 60초 뒤에 Flushed 타이머가 만료되어 Hold Down 상태 60초가 경과되면 해당 경로는 라우팅 테이블에서 제거된다
7) 기타 특징
- 전송 프로토콜: UDP 사용, 포트 번호 520
- 주소 구조: 클래스풀 방식 → 모든 네트워크가 동일한 마스크를 사용한다는 가정하에 작동
2. RIPv2
RIPv2는 Distance Vector 알고리즘 기반의 라우팅 프로토콜로, 클래스리스 방식과 멀티캐스트 지원, 인증 기능 등을 통해 RIP의 한계를 보완한 프로토콜이다. 소규모 네트워크 또는 서브넷 구조가 유동적이지 않은 환경에 적합하며, 대부분의 네트워크 장비 벤더에서 지원된다.
1) 클래스리스 라우팅 프로토콜
- 서브넷 마스크 정보를 포함하여 전송하기 때문에 VLSM, CIDR과 같은 주소 계획을 지원
- network 명령어로 라우팅 업데이트를 하고자 하는 로컬 서브넷을 클래스풀 형식으로 설정
=> [해결 방법]
no auto-summary 명령어를 이용해 자동 요약을 해지하여 비연속 서브넷 구간에서 라우팅 업데이트가 단절되는 문제점 해결
2) 멀티캐스트 기반 라우팅 정보 전파
- 브로드캐스트 대신 멀티캐스트 주소 224.0.0.9를 이용하여 라우팅 정보를 전송한다.
- 이로 인해 RIP를 사용하는 장비들끼리만 정보를 주고 받게 되어 트래픽 효율성이 향상
- PC나 서버가 연결된 인터페이스에도 멀티캐스트가 전송되면 불필요한 대역폭 소모가 발생할 수 있음
=> [해결 방법]
passive-interface [인터페이스명] 명령어로 불필요한 인터페이스로 RIP 업데이트를 전송하는 것을 차단
3) 인증 기능 제공
- 라우팅 정보를 수신하거나 라우팅 업데이트 정보의 변조를 방지하기 위해 인증 기능을 제공
- 서로 라우팅 정보를 주고받기 위해서는 key chain의 key string 값이 동일해야 하며, 그렇지 않으면 해당 정보는 무시됨
- 인증 방식에는 Plaintext 와 MD5가 있음
- Plaintext Authentication : 평문으로 key string을 RIP 패킷에 포함하는 방식 (실무에서 안 씀)
- MD5 Authentication : key string을 RIP 패킷에 암호화된 해시 값으로 추가 (실무에서 가장 많이 사용되는 방식)
4) 트리거드 업데이트 방식 사용
- 기본적으로 30초마다 라우팅 업데이트를 전송하지만, 트리거드 업데이트 방식을 통해 네트워크 변화가 있을 때만 업데이트 전송 가능
- 대역폭이 낮은 WAN 환경에서는 트래픽 부하를 줄이는 데 유용
- 단, Point-to-Point 링크 환경에서만 지원
💡Point-to-Point 링크란?
두 장비 간에 직접 연결된 단일 통신 경로를 의미하는 네트워크 연결 방식이다.
5) RIPv2 컨버전스와 오류 처리
RIPv2는 토폴로지 변화에 대한 반응 속도(컨버전스)가 다른 라우팅 프로토콜에 비해 느린 편이라 장애나 삭제된 네트워크에 대한 정보를 주변 라우터에게 전달할 때 시간이 소요된다.
5-1) 루트 포이즌 (Route Poisoning)
- 장애가 발생한 네트워크의 경로를 메트릭 16으로 설정하여 모든 인접 라우터에게 전파
- 이는 해당 경로가 더 이상 유효하지 않음을 의미
5-2) 포이즌 리버스 (Poison Reverse)
- Route Poisoning에 대한 응답 개념
- 만약 해당 경로에 대해 대체 경로가 존재하지 않으면 응답하지 않음으로써 루프를 방지
✍️ 하루 회고
오늘은 RIP과 RIPv2에 대해 정리해보았다.
비록 오래된 프로토콜이라 단점도 많고, 실무에서 자주 사용되지는 않지만, 네트워크 라우팅 프로토콜이 어떤 원리로 동작하고, 어떻게 발전해 왔는지를 이해하는 데 중요한 기초가 되는 내용이었다.
아주 드물게 아직도 RIP을 사용하는 장비를 접할 수도 있기 때문에, 이론적인 흐름과 동작 원리를 알고 있는 것은 분명 의미가 있다고 생각한다.
728x90
'TIL' 카테고리의 다른 글
[에스넷시스템 부트캠프] TIL Day 14 - diff, sort, file, 압축과 아카이빙, 프로세스 (0) | 2025.06.09 |
---|---|
[에스넷시스템 부트캠프] TIL Day 13 - EIGRP, OSPF (0) | 2025.06.06 |
[에스넷시스템 부트캠프] TIL Day 11 - STP, EtherChannel (0) | 2025.06.05 |
[에스넷시스템 부트캠프] TIL Day 10 - VLAN, VTP (0) | 2025.05.31 |
[에스넷시스템 부트캠프] TIL Day 9 - 이더넷 LAN 설계 분석 (1) | 2025.05.30 |