RIP - Routing Information Protocol
본문 바로가기

RIP - Routing Information Protocol

액트 2019. 5. 27.

@ RIP 

 

 

RIP(Routing Information Protocol)

 

- 알고리즘

벨만포드라는 수학자가 개발한 Distance Vector 계열에 B.F 알고리즘 사용

 

- 정보수집

정기적으로 Update Triffice 전달받아 정보를 수집한다 (RIP Timer 사용)

=> 라우터에 문제가 생겼는데 30초 마다 정기적으로 신호를 받기 때문에 최대 30초까지

    모를 수 있다.

=> 지속적인 같은 정보를 받을 수 있다. -> 쓸모 없는 Traffic이 쌓인다. => 대규모 사용못함

=> RIP 은 UDP를 사용하기 때문 (연결, 신뢰성, 응답이 모두 없다)

 

Update Timer|---30초---|

- 30초 동안 내가 원하는 정보가 오지 않을 때

Invalid Timer |------180초------|  : 동안 기다린다.

- 180초 동안 기다려도 정보가 오지 않으면

HoldDown Timer                        |180~      :  아무래도 이 네트워크 다운된거 같으니 확인해봐라.

Flush Timer  |-----------240초-----------|   : 확인했는데 없으면 삭제, 있으면 Update

 

=> RIP은 동기화할 수 있는 Time이 HoldDown Timer 구간 밖에 없다.

 

RIP은 UDP:520번을 사용하기 때문에 네트워크 정보가 목적지까지 전달이 안되 Neighbor와 네트워크 정보에 대한 동기화가 안될 수 있는 문제가 있다. 그래서 이 문제를 해결하기 위해 정기적으로 자신이 가지고 있는 모든 정보를 전달함으로 동기화가 되게끔 만듬다. 그런데 네트워크 동기화를 위해 정기적인 업데이트를 사용하기 때문에 불필요한 트래픽이 많이 발생하여 댁모 네트워크에서는 사용하기가 힘들다. (중소규모 네트워크 사용)

정기적인 Update를 사용하는 RIP은 시간을 구분하여 업데이트하기 때문에 네트워크 변경이 생겼을 때 빠르게 반응하지 못한다. (수렴시간이 느리다)

 

RIP은 Distance Vector를 사용하는 Protocol 이기 때문에 Topology를 이해할 수 없다.

TTL 값이 2이기 떄문에 Topology를 이해할 수 없다.

그래서 네트워크 정보를 스스로 찾을 수 없기 때문에 Neighbor들에게 받은 정보를 그래도 사용할 수 밖에 없다. 이 때문에 Neighbor에게 전달받은 정보를 그대로 사용해야 된다는 문제 때문에 잘못된 정보를 전달 받더라도 그 정보를 그대로 믿고 사용해야 하기 때문에 RIPp은 LOOP라는 현상이 발생하여 라우터에 문제가 생길 수 있다.

그래서 이 문제를 해결하기 위해 Split-Horizon(받는 정보를 다시 주지 않는다), Route Poizoning(네트워크가 다운됐을때 정보를 동기화), Poizon Reverse(정보가 없다는 것을 알리기 위해), HoldDown Timer(이 문제를 확인할 수 있는 구간), Triggered Update(네트워크가 다운됏을 때 재설정하는 위해) 를 사용하여 루프를 방지하고 있다.

 

- BestPath

Metric : 최적의 경로를 찾기 위한 요소

Metric = Hop Count (라우터 갯수)

RIP은 경로들 중 HopCount가 가장 적은 경로를 최적의 경로로 선택한다.

RIP의 Hop Count는 4bit 2^4 = 0001~1111 : 1~15 로 표현한다.

Network가 Fail이 생겼을 경우 Neighbor들에게 이 사실을 알리기 위해 Hop Count를 16으로 표현하여 알린다. (Route Poisoning)

 

- Network 유지

정기적인 Update로 Network 유지

 

- 관리거리(2순위, 변경가능)

Adminitrative Distance(신뢰성) : 120

한 Diagram에 두개 이상의 Protocol이 있을 경우 어떤 Protocol을 사용할지 결정하는 값

낮으면 낮을 수록

AD (1~255)

0 : connect

1 : static

90 : EIGRP

110 OSPF

120 : RIP

 

bit match(1순위)가 더 중요하다 AD보다

 

< 장점 >

1.설정이 쉽다.

=> 네트워크 지정만으로도 라우팅 가능(소규모 네트워크나 대형 네트워크의 말단에서 사용)

2.표준 라우팅 프로토콜 : 호환성이 좋음

 

< 단점 >

1.메트릭 값을 홉 카운트로 사용 -> 경로 결정에 속도가 반영되지 않음

   => 비 효율적 경로 선택

2.토폴로지 변화와 상관없이 30초마다 라우팅 테이블 전체를 전송

   => 라우팅 정보 전송을 위해 많은 대역폭 사용

3.홉카운트 리미트 16 -> 대규모 네트워크에서 사용하지 못함

 

 

- 사용 버전 : v1, v2

 

< 사용 버젼에 따른 차이점 >

RIPv1(Classfull)
-Classfull Network만 지원하기 때문에 Subnetmask를 전달하지 않는다.
-VLSM이나 CIDR을 지원하지 않는다.
-정보전달시 Broadcast(255.255.255.255)로 Routing Table을 전달한다.

 

RIPv2(Classfull / Classless)
-Classless Network도 지원하기 때문에 Subnetmask를 전달한다.
-VLSM이나 CIDR을 지원한다.
-정보전달시 Multicast(224.0.0.9)로 Routing Table을 전달한다.

 

 

< 사용 버젼에 따른 공통점 >

1.라우팅 정보를 유지하기 위해 변화와 상관없이 주기적으로 라우팅 테이블 갱신

2.광고 시 UDP port : 520

 

 

 @ RIP 설정방

 

- RIPv1
Router(config)#router rip => RIPv1 Enable
Router(config-router)#auto-summary => Default로 Enable되있다.(Classfull Summary)
Router(config-router)#network <Classfull Network> => Match기법으로 해당 네트워크 정보를 통해 인터페이스에서 Match되는 정보만을 전달한다.
Router(config-router)#passive-interface <type> <number> => 해당 인터페이스로 정보전달을 하지 않는다. 하지만 받는 정보에 대해서 수렴한다.

 

- RIPv2
Router(config)#router rip => RIPv1 Enable
Router(config-router)#version 2 => RIPv2 Enable. RIPv2 Enable되면 Broadcast에서 Multicast로 변경되고 VLSM이나 CIDR이 지원되기 때문에 Classless환경에서도 사용할수 있다.
Router(config-router)#no auto-summary => auto-summary기능 해제 이 기능 해제 후 관리자의 설정에 의해 Classless Summary가 가능하다.
Router(config-router)#network <Classfull Network> => Match기법으로 해당 네트워크 정보를 통해 인터페이스에서 Match되는 정보만을 전달한다.
Router(config-router)#passive-interface <type> <number> => 해당 인터페이스로 정보전달을 하지 않는다. 하지만 받는 정보에 대해서 수렴한다.

 

- RIP의 개요

- Dynamic Routing 설정하기

- RIP 설정하기

- RIP의 구성 검증

 

< RIP의 개요 >

 

 

- Hop Count를 Metric으로 사용하여 최적 경로 선택

- 매 30초마다 Routing Update를 내보냄

- 최대 6E개의 Cost qual Path 지원

 

 

< Dynamic Routing 설정하기 >

 

 

- Routing Protocol 선택

- Network와 Interface 지정

- Summarization과 같은 기타 옵션을 지정

 

 

< IP Routing Protocol 정의 >

Router(config)#router protocol [keyword]

Router(config-router)#network network-number [option]

 

- 각각의 IP Routing Process에 반드시 설정해야 하는 명령어

- 자신이 가진 Network를 알리고, 이 Network에서 파생된 IP Address가 할당된 Interface로

  Routing 정보를 전송

 

 

 

<RIP 설정 >

1. Routing 설정 모드

Router(config)#router rip

 

2. 광고할 Network 지정

Router(config-router)#network x.x.x.x

 

- RIP은 키워드나 옵션이 없음

- Network 명령어

  => 특정 Router의 Interface에 설정된 Network를 RIP를 통해 다른 Router에게 광고

  => Classful Network Number로 설정

 

 <RIP default 설정 >

Router(config)#router rip

Router(config)#default-information originate

 

 

 

< 설정 예제 >

 

 

 가지고 있는 Network 정보

Router-A

 10.0.0.0, 192.168.1.0

Router-B

192.168.1.0, 192.168.2.0

Router-C

192.168.2.0, 172.16.1.0 

  

   !-- Router-A 설정

   Router(config)#router rip

   Router(config-router)#network 192.168.1.0

   Router(config-router)#network 10.0.0.0

 

     !-- Router-B 설정

Router(config)#router rip

Router(config-router)#network 192.168.1.0

   Router(config-router)#network 192.168.2.0

 

   !-- Router-C 설정

Router(config)#router rip

Router(config-router)#network 192.168.2.0

   Router(config-router)#network 172.16.1.0

 

 

 

 

 

 

 

 

@ RIP 설정하기

-각 Router들의 Connected정보 확인
R1#show ip route connected
C       172.11.1.0 is directly connected, Loopback1
C       172.11.0.0 is directly connected, Loopback0
C       192.168.1.8 is directly connected, Serial1/1
C       192.168.1.0 is directly connected, Serial1/0

R2#show ip route connected
C       172.12.0.0 is directly connected, FastEthernet0/0
C       172.12.1.0 is directly connected, Loopback1
C       192.168.1.0 is directly connected, Serial1/0
C       192.168.1.4 is directly connected, Serial1/1

R3#show ip route connected
C       172.13.1.0 is directly connected, Loopback1
C       172.13.0.0 is directly connected, Loopback0
C       192.168.1.8 is directly connected, Serial1/0
C       192.168.1.4 is directly connected, Serial1/1


 

- RIPv1 Enable -
!-- R1
configure terminal
router rip
network 172.11.0.0
network 192.168.1.0
end

!-- R2
configure terminal
router rip
network 172.12.0.0
network 192.168.1.0
end

!-- R3
configure terminal
router rip
network 172.13.0.0
network 192.168.1.0
end

 

 

- RIPv2 Config -
!-- R1
configure terminal
router rip
version 2
end

!-- R2
configure terminal
router rip
version 2
end

!-- R3
configure terminal
router rip
version 2
end


- auto summary기능 해제
-> 없는 네트워크 망까지 설정해서 잡아주기 때문에 해제해야한다.

!-- R1
configure terminal
router rip
no auto-summary
end

!-- R2
configure terminal
router rip
no auto-summary
end

!-- R3
configure terminal
router rip
no auto-summary
end

댓글