
거리 벡터 라우팅 프로토콜(Distance Vector Routing Protocol)
, 거리와 방향을 기준으로 데이터가 담긴 패킷을 전달
AS내부를 구성하는 IGP(Interior Gateway Protocol)이다.
Hop Count를 기준으로 Hop Count가 가장 작은 최적의 경로를 찾는다.
(최대 15홉, 16은 무제한 즉, 네트워크나 호스트가 도달할수 없음을 의미)
자신의 라우팅 테이블을 30초 주기로 전파한다.
(업데이트시 경로 이상이나 새로 생긴 경로 등의 정보를 갱신)
| RIPv1 | RIPv2 | |
|---|---|---|
| 라우팅 테이블 전송 방식 | Broadcasting | Multicasting |
| 사용하는 주소 | 255.255.255.255 (브로드캐스트 주소) | 224.0.0.9 (멀티캐스트 주소) |
| 자동 축약 | X | O |
| VLSM 지원 | X | O |
| Classless 체계 사용 가능 여부 | X | O |
Classless routing protocol을 사용하여 no auto-summary 명령어를 이용하여 자동요약을 해지시킨다.
Passsive-interface 명령어를 사용하여 불필요한 인터페이스로 RIP 업데이트 전송하는 패킷을 차단시킨다.
소규모 네트워크 상에서 효율적이다.(메모리 자원 적게 사용)
다른 라우팅 프로토콜에 비해 구성이 간편하다.
표준 라우팅 프로토콜로써 모든 제조사의 라우터에서 지원하는 프로토콜
Cisco 라우터의 경우 4~6개의 경로에 대한 로드밸런싱이 가능하다.
라우터끼리 동기화를 시켜주지 않으면, 서로 정보가 달라 Routing looping이 발생할 수 있다.
전체 경로를 담은 라우팅 정보를 브로드 캐스팅 함에 따라서, traffic 에 부하를 준다.
라우터끼리 각 30초마다 정보를 보내므로, 라우터가 많아지면 수분 이상이 걸린다. Low Convergence를 가진다.
Hop Count가 15 까지밖에 존재하지 않아 규모가 큰 네트워크에서 사용하기에는 무리가 있다.
TCP/IP는 데이터그램이 라우터를 지날떄 마다 홉을 센다.
(RIP 거리는 라우터와 네트워크 사이의 거리를 라우터 수로 계산)
라우터가 네트워크와 직접 연결되있으면 1홉임
1개 라우터를 거치면 2홉
같은 네트워크에 있는 라우터가 N의 비용으로 네트워크 X로 갈 수 있다는 메세지를 받으면 그 라우터는 자신은 네트워크 X로 N+1 만에 갈 수 있다고 계산함
주기적인 RIP 라우팅 업데이트를 할 때 시간 간격을 제어하거나, 네트워크 토폴로지가 변경될 때 RIP 경로를 갱신할 때 사용된다.
Update Timer (0 ~ 30초)
주기적으로 라우팅 업데이트할 때 사용되는 시간 (수신하면 0초로 리셋)
Invaild Timer (30 ~ 180초)
라우터가 다른 라우터로부터 180초 이상 업데이트를 받지 못하는 경우
업데이트 하지 않는 라우터의 경로를 사용 할 수 없는
Hold Down Timer (180 ~ 360초)
라우팅 업데이트를 수신하지 않는다.
Flushed Timer (0 ~ 240초)
라우터가 다른 라우터로부터 240초 이상 업데이트를 받지 못하는 경우
업데이트 하지 않는 라우터의 모든 라우팅 테이블 항목을 제거한다.

위 그림과 같이 구성하였을 때, n1이 다운되면, 라우터 A는 자신의 n1인터페이스가 다운됨을 감지하고, 자신의 라우팅 테이블에 해당 n1의 경로가 없다고 표시한다.
하지만, 이 변경된 값을 이웃한 라우터 B에게 즉시 알리지 못하고, 최대 30초 기간의 update 타이머 기간동안 기다린다.
A가 기다리는 도중에 라우터 B로부터 '나 B가 n1으로 가는 Hop=2인 경로를 알고 있다'고 하는 메시지를 받을 수도 있다.
이것에 대하여, 라우터 a는 b를 공유하면, Hop=3에 n1으로 갈수 있다고 착각하여, 자신의 라우팅 정보를 수정한다.
라우터 A는 자신의 라우팅 정보(n1으로의 h=3)를 일정시간 뒤에 B에게 보내면, 라우터 B는 전에 A가 나에게 말하길 n1은 A가 Hop 1 만에 도달가능하다고 했었는데, 이번에는 A가 Hop 3의 경비로 도달가능하다.
라고 판단하고 n1에 대한 경로정보로 A를 경유하여 Hop=4로 갈 수 있다고 잘못 갱신한다.
이러한 과정은 계속 반복될 것이며 결국은 Cost Hop이 무한히 증가해버리는 라우팅 루핑에 빠지게 된다.
라우터는 어떤 네트워크가 도착 불가능해졌다는 정보를 받으면 타이머를 시작
홀드 다운 타이머가 만료될 때 까지는 해당 경로가 접근 가능하다는 메시지를 버린다(타이머는 대부분 60~120초)
경로가 더 이상 유효하지 않다는 정보를 최근에 받았을때 경로에 접근 할 수 있다는 잘못된 정보에도 라우터가 속지 않도록 할 수 있음
오래된 정볼르 버릴 수 있는 일정시간을 두기 때문에 복잡한 인터네트워크에서 매우 유용함
무한 세기 문제는 기본 RIP 알고리즘에 가장 심각한 문제
라우터가 인터네트워크를 보는 시야를 좁혀 특정 링크에 맞는 정보만 보내야 함 -> 수평 분할
라우터가 자신이 접속하고 있는 네트워크로 RIP 응답 메시지를 보낼때 그 네트워크에서 배운 경로 정보는 보내지 않음
많은 라우터가 간접적으로 연결되어 있는 경우 수평 분할로도 무한 세기 문제를 제거 X -> 홀드 다운 특성 이용
기본 수평 분할 특성을 개선하기 위해 포이즌 리버스(poisoned reverse) 기능을 추가
특정 인터페이스에서 습득하 경로를 전송하는게 아니라 그 인터페이스로 RIP 응답 메시지를 보낼 때 척도를 RIP 무한 또는 16으로 설정함
다른 라우터가 특정 경로를 위해 자신의 인터페이스를 사용하지 못하도록 독을 치는것을 의미

Router(config) #router rip
- Routing Mode 중 RIP 설정
Router(config-router) #version2
- RIPv2 설정
Router(config-rotuer) #network x.x.x.x
- 내게 인접한 네트워크주소
Router(config-router) #no auto-summary
- 자동 축약 해제
* auto-summary란 라우팅 정보에 포함된 네트워크와 라우팅정보가 전송되는 인터페이스의 주 네트워크가 다른 지점에서 자동 축약이 일어나는 것이다.
Router(config-router) #passive-interface g0/0/0
- 불필요한 라우팅 정보를 보내지 않을때 사용 (부하 감소)
Router(config-router)#timers basic update invalid holddown flush
Router(config-router)#timers basic 50 100 150 300
- RIP Timer 설정
R1(config)#int serial 0/0
R1(config-if)#ip rip triggered
Router(config)#interface ethernet 1/2
Router(config-if)#ip rip poison-reverse
R0(config)#interface gigabitEthernet 0/0
R0(config-if)#ip split-horizon