Routing Protocol (RIP) - RIP은 Distance Vector Routing Protocol. - RIP은 v1과 v2가 있다. - Routing 정보 전송을 위해 UDP 포트 520번 사용 - AD값은 120 <장점> - 설정이 간단하다. - 작은 규모의 네트워크나 대형 네트워크의 말단 지점에서 사용하기 좋다. - 표준 Routing Protocol이기 때문에 모든 회사의 Router에서 사용 가능 (EIGRP 경우에는 Cisco 전용, 때문에 다른 회사의 Router에서는 사용 불가)
Routing Protocol (RIP) <단점> - Metric을 Hop-count로 사용한다. (가장 적은 Hop-count를 가진 경로가 최적 경로) 때문에 경로 결정시 Link의 속도를 반영하지 못한다. 복잡한 네트워크에서는 비효율적인 Routing 경로가 만들어질 수 있다. RIP의 최대 Hop-count가 15, 때문에 대형 네트워크에서는 사용이 불가능. (Hop-count가 16이면 도달 불가능한 네트워크로 간주) Routing 정보 전송 방식이 비효율적이다. Topology에 변화와 상관없이 무조건 30초마다 인접 Router에게 Routing table 내용 전체를 전송한다. (OSPF, EIGRP, BGP 등의 다른 Dynamic Routing Protocol은 Topology 변화가 생길 경우 바뀐 네트워크의 정보만 전송)
Routing Protocol (RIP) 19.2 kbps T1 Hop count metric selects the path Routes update every 30 seconds 5
Distance Vector—Selecting Best Route with Metrics EIGRP Bandwidth Delay Load Reliability MTU 56 RIP Hop count T1 56 OSPF Cost (Bandwidth) T1 B Information used to select the best path for routing
Routing Protocol (RIP) RIP version (1) RIP Version 1 - Subnet mask 정보가 없는 Classful 라우팅 프로토콜. (VLSM 미지원) - 정보 전송 시 Broadcast 주소(255.255.255.255)를 사용. 때문에 RIP이 설정 안된 다른 장비에게도 불필요한 부하가 걸리게 된다. (2) RIP Version 2 - Subnet mask 정보가 있는 Classless 라우팅 프로토콜 (VLSM 지원) - 정보 전송 시 Multicast(224.0.0.9)를 사용한다. - 각 라우터에서 네트워크 경로 정보에 대한 인증을 할 수 있다. 보완성 강화 - tag(꼬리표 ) 사용이 가능 - Auto Summary (자동 축약)를 한다. - Manual Summary (수동 축약)가 가능하다.
Distance Vector Routing Protocols B C A Distance—How far Vector—In which direction D D C B A Routing Table Routing Table Routing Table Routing Table - Distance Vector Routing Protocol은 Neighbor Router 에게 주기적으로 Routing Table을 Update. ( RIP 30초, IGRP 90초)
Distance Vector—Sources of Information and Discovering Routes 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 E0 A S0 B C S0 S1 S0 E0 Routing Table Routing Table Routing Table 10.1.0.0 E0 S0 10.2.0.0 S0 S1 10.3.0.0 S0 10.2.0.0 10.3.0.0 10.4.0.0 E0 Routers discover the best path to destinations from each neighbor
Distance Vector—Sources of Information and Discovering Routes 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 E0 A S0 B C S0 S1 S0 E0 Routing Table Routing Table Routing Table 10.1.0.0 E0 S0 10.2.0.0 S0 S1 10.3.0.0 S0 10.2.0.0 10.3.0.0 10.4.0.0 E0 10.3.0.0 1 10.4.0.0 1 10.2.0.0 S0 1 10.1.0.0 1 Routers discover the best path to destinations from each neighbor
Distance Vector—Sources of Information and Discovering Routes 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 E0 A S0 B C S0 S1 S0 E0 Routing Table Routing Table Routing Table 10.1.0.0 E0 S0 10.2.0.0 S0 S1 10.3.0.0 S0 10.2.0.0 10.3.0.0 10.4.0.0 E0 10.3.0.0 1 10.4.0.0 1 10.2.0.0 S0 1 10.4.0.0 2 10.1.0.0 1 10.1.0.0 S0 2 Routers discover the best path to destinations from each neighbor
Maintaining Routing Information Problem—Routing Loops Convergence (수렴) Time - Convergence 네트워크에 변화가 생길 경우 모든 Router가 네트워크 변화 상태에 대한 정확하고 일관된 정보를 유지하는 것. - Convergence Time 네트워크에 변화가 생겼을 경우 그 변화된 정보를 서로 인식하고 수정하는 시간 Convergence Time은 각 Routing Protocol별로 다르다. Convergence Time은 짧을 수록 좋다. - RIP 같은 경우는 Convergence Time이 30초. * RIP 같은 경우는 Convergence Time이 30초로 느리다. 때문에 Routing Loop 문제가 발생한다.
Maintaining Routing Information Problem—Routing Loops Routing Table
Maintaining Routing Information Problem—Routing Loops Router C 의 10.4.0.0 Network 장애발생
Maintaining Routing Information Problem—Routing Loops Router C 는 10.4.0.0 Network의 best path 를 router B 에서 찾음
Maintaining Routing Information Problem—Routing Loops Router A 는 Router B 로 부터 잘못된 Update를 받음.
Maintaining Routing Information Problem—Routing Loops Network 10.4.0.0 의 잘못된 정보가 계속 Update 됨.
Maintaining Routing Information Problem—Routing Loops 16 Hop (Hop-Count-Limit)
Maintaining Routing Information Problem—Routing Loops Packet 은 10.4.0.0으로 가기 위해서 Router B 와 Router C 사이에서 계속 Loop 됨
Maintaining Routing Information Problem—Routing Loops - 해결책 - Split Horizon 2) Route Poisoning, Poison reverse 3) Hold Down Timer 4) Triggered Update
Solution: Split Horizon 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 X E0 A S0 B C S0 S1 S0 E0 X X Routing Table 10.3.0.0 S0 1 2 10.1.0.0 10.2.0.0 10.4.0.0 E0 S1 E1 Purpose: This figure introduces the corrective measure known as “split horizon.” The split horizon technique attempts to solve routing loops. Emphaisze: The split horizon technique attempts to eliminate routing loops and speed up convergence. The rule of split horizon is that it is never useful to send information about a route back in the direction from which the original packet came. In the example: Router C originally announced a route to network 10.4.0.0 to router B. It makes no sense for router B to announce to router C that router B has access to network 10.4.0.0 through router C. Given that router B passed the announcement of its route to network 10.4.0.0 to router A, it makes no sense for router A to announce its distance from network 10.4.0.0 to router B. Because router B has no alternative path to network 10.4.0.0, router B concludes that network 10.4.0.0 is inaccessible. In its basic form, the split horizon technique simply omits from the message any information about destinations routed on the link. This strategy relies either on routes never being announced or on old announcements fading away through a timeout mechanism. Split horizon also improves performance by eliminating unnecessary routing updates. Under normal circumstances, sending routing information back to the source of the information is unnecessary. It is never useful to send information about a route back in the direction from which the original packet came
Solution: Route Poisoning 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 X E0 A S0 B C S0 S1 S0 E0 Routing Table 10.3.0.0 S0 1 2 10.1.0.0 10.2.0.0 10.4.0.0 Infinity E0 S1 E1 Purpose: This figure expands on the split horizon technique by adding the concept of poisonous reverse updates. Emphasize: Route poisoning closes the potential for longer routing loops. Fast convergence minimizes the chance for a routing loop to occur, but even the smallest interval leaves the possibility open. With a poison route in place, router B can maintain a steadfast entry that network 10.4.0.0 is indeed down. Routers set the distance of routes that have gone down to infinity
Solution: Poison Reverse 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 X E0 A S0 B C S0 S1 S0 E0 Poison Reverse Routing Table 10.3.0.0 S0 1 2 10.1.0.0 10.2.0.0 10.4.0.0 Infinity E0 S1 E1 Possibly Down Purpose: This figure explains poison reverse.. Emphasize: Poison reverse overrides the split horizon solution. Poison Reverse overrides split horizon
Solution: Hold-Down Timers Network 10.4.0.0 is unreachable Update after hold-down Time 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 X E0 A S0 B C S0 S1 S0 E0 Update after hold-down Time Network 10.4.0.0 is down then back up then back down Router keeps an entry for the network possibly down state, allowing time for other routers to recompute for this topology change
Solution: Triggered Updates Network 10.4.0.0 is unreachable Network 10.4.0.0 is unreachable Network 10.4.0.0 is unreachable 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 X E0 A S0 B C S0 S1 S0 E0 Router sends updates when a change in its routing table occurs
Implementing Solutions in Multiple Routes D 10.4.0.0 E B X C A
Implementing Solutions in Multiple Routes (cont.) Holddown D 10.4.0.0 E B X C Holddown A Holddown
Implementing Solutions in Multiple Routes (cont.) Holddown D Poison Reverse Poison Reverse 10.4.0.0 E B X C Holddown Poison Reverse Poison Reverse A Holddown
Implementing Solutions in Multiple Routes (cont.) Holddown D 10.4.0.0 E B X C Holddown Packet for Network 10.4.0.0 Packet for Network 10.4.0.0 A Holddown
Implementing Solutions in Multiple Routes (cont.) D 10.4.0.0 E B Link up! C A
Implementing Solutions in Multiple Routes (cont.) D 10.4.0.0 E B Link up! C A
RIP Configuration Router(config)#router rip Starts the RIP routing process Router(config-router)#network network-number Selects participating attached networks The network number must be a major classful network number
RIP Configuration Example S2 S2 S3 S3 E0 172.16.1.0 192.168.1.0 A B C 172.16.1.1 10.1.1.1 10.1.1.2 10.2.2.2 10.2.2.3 192.168.1.1 router rip network 172.16.0.0 network 10.0.0.0 router rip network 192.168.1.0 network 10.0.0.0 2.3.0.0 2.3.0.0 router rip network 10.0.0.0
Verifying the Routing Protocol—RIP S2 S2 S3 S3 E0 172.16.1.0 192.168.1.0 A B C 172.16.1.1 10.1.1.1 10.1.1.2 10.2.2.2 10.2.2.3 192.168.1.1 RouterA#sh ip protocols Routing Protocol is "rip" Sending updates every 30 seconds, next due in 0 seconds Invalid after 180 seconds, hold down 180, flushed after 240 Outgoing update filter list for all interfaces is Incoming update filter list for all interfaces is Redistributing: rip Default version control: send version 1, receive any version Interface Send Recv Key-chain Ethernet0 1 1 2 Serial2 1 1 2 Routing for Networks: 10.0.0.0 172.16.0.0 Routing Information Sources: Gateway Distance Last Update 10.1.1.2 120 00:00:10 Distance: (default is 120)
Displaying the IP Routing Table 172.16.1.0 192.168.1.0 A B C 172.16.1.1 10.1.1.1 10.1.1.2 10.2.2.2 10.2.2.3 192.168.1.1 RouterA#sh ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default U - per-user static route, o - ODR T - traffic engineered route Gateway of last resort is not set 172.16.0.0/24 is subnetted, 1 subnets C 172.16.1.0 is directly connected, Ethernet0 10.0.0.0/24 is subnetted, 2 subnets R 10.2.2.0 [120/1] via 10.1.1.2, 00:00:07, Serial2 C 10.1.1.0 is directly connected, Serial2 R 192.168.1.0/24 [120/2] via 10.1.1.2, 00:00:07, Serial2
debug ip rip Command E0 S2 S2 S3 S3 E0 172.16.1.0 192.168.1.0 A B C 172.16.1.1 10.1.1.1 10.1.1.2 10.2.2.2 10.2.2.3 192.168.1.1 RouterA#debug ip rip RIP protocol debugging is on RouterA# 00:06:24: RIP: received v1 update from 10.1.1.2 on Serial2 00:06:24: 10.2.2.0 in 1 hops 00:06:24: 192.168.1.0 in 2 hops 00:06:33: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (172.16.1.1) 00:06:34: network 10.0.0.0, metric 1 00:06:34: network 192.168.1.0, metric 3 00:06:34: RIP: sending v1 update to 255.255.255.255 via Serial2 (10.1.1.1) 00:06:34: network 172.16.0.0, metric 1