RIP( Routing Information Protocol) is a dynamic, open source (supported by any company hardware/software), distance vector routing protocol. RIP uses UDP port 520 for route updates. RIP calculates the best route based on hop count, Like all distance vector routing protocols. Two versions of RIP is- RIPv1 and RIPv2. RIP cannot handle more than 15 hops. Anything more than 15 hops away is considered unreachable by RIP. RIPv1 does not support VLSM. RIPv2 support VLSM.
METRIC – Metric measures how ‘good’ a route is. RIP uses the number of hops as the metric. The route with the fewest number of hops is preferred.
RIP ROUTING UPDATES
Routers running RIP, broadcast the full list of all the routes they know in every 30 seconds. When a router running RIP receive a broadcast it runs the distance vector algorithm to create a list of best routes.
RIP TIMERS :
TIMER | DEFAULT TIMER | CONTROLS |
Update | 30 sec. | Interval between route update advertisements |
Hold-Down | 90 sec. | Period a route is withdrawn from the table to prevent a routing loop. |
Timeout | 180 sec. | Interval a route should stay ‘live’ in the routing table. This counter is reset every time the router hears an update for this route. |
Flush | 120 sec. | How long to wait to delete a route after it has timed out. |
RIPv1 Configuration
Before RIP configuration you must configure IP address of all router. Keep in mind that each router must assign different network IP address.
Router-1: RIPv1 Configuration
router-1> enable router-1# conf t router-1(config)# router rip router-1(config-router)# network 192.168.10.0 router-1(config-router)# network 192.168.20.0 ( or only 192.168.0.0 ) router-1(config-router)# ^z router-1# copy run start
Router-2: RIPv1 Configuration
router-2> enable router-2# conf t router-2(config)# router rip router-2(config-router)# network 192.168.20.0 ( or only 192.168.0.0 ) router-2(config-router)# network 192.168.30.0 router-2(config-router)# network 192.168.40.0 router-2(config-router)# ^z router-2# copy run start
Router-3: RIPv1 Configuration
router-3> enable router-3# conf t router-3(config)# router rip router-3(config-router)# network 192.168.40.0 ( or only 192.168.0.0 ) router-3(config-router)# network 192.168.50.0 router-3(config-router)# ^z router-3# copy run start
Router-2 RIP Configuration
router(config)# router rip router(config-router)# version 2 router(config-router)# network 192.168.10.0 router(config-router)# network 192.168.20.0 ( or only 192.168.0.0 ) router(config-router)# no auto-summary router(config-router)# ^z router# copy run start
RIP Troubleshooting
RIP Troubleshooting Router# debug ip rip ( Displays all RIP activity in real time ) Router# show ip rip database ( Displays contents of the RIP database )
RIP additional commands
Router(config)# no router rip ( Turns off the RIP routing process. )
Router(config-router)# no network w.x.y.z (Removes network w.x.y.z from the RIP )
Router(config-router)# version 2 ( RIP send and receive RIPv2 packets globally. )
Router(config-router)# version 1 ( RIP will now send and receive RIPv1 packets only )
Router(config-if)# ip rip send version 1 (The interface will send only RIPv1 packets )
Router(config-if)# ip rip send version 2 ( The interface will send only RIPv2 packets )
Router(config-if)# ip rip send version 1 2 ( send both RIPv1 and RIPv2 packets. )
Router(config-if)# ip rip receive version 1 ( The interface receive only RIPv1 packets )
Router(config-if)# ip rip receive version 2 ( The interface receive only RIPv2 packets )
Router(config-if)# ip rip receive version 1 2 (receive both RIPv1 and RIPv2 packets )
Router(config-router)# no auto-summary ( RIPv2 summarizes networks at the classfull boundary. This command turns auto summarization off )
Router(config-router)# passive-interface s1/0 ( RIP updates not sent through s1/0 )
Router(config-router)# neighbor a.b.c.d ( Defines a specific neighbor with which to exchange information.)
Router(config-router)# no ip split-horizon ( Turns off split horizon, on by default).
Router(config-router)# ip split-horizon ( Re enables split horizon. )
Router(config-router)# timers basic 30 90 180 270 360
Changes timers in RIP:
30 = Update timer (in seconds)
90 = Invalid timer (in seconds)
180 = Hold-down timer (in seconds)
270 = Flush timer (in seconds)
360 = Sleep time (in milliseconds)
Router(config-router)# maximum-paths x ( Limits the number of paths for load balancing to x (4 = default, 6 = maximum).
Router(config-router)# default-information originate (Generates a default route )