Routing Information Protocol (RIP)

28 Jun, 2022
Routing Information Protocol (RIP) is a dynamic routing protocol that uses hop count as a routing metric to find the best path between the source and the destination network. It is a distance-vector routing protocol that has an AD value of 120 and works on the Network layer of the OSI model. RIP uses port number 520. 
Hop count is the number of routers occurring in between the source and destination network. The path with the lowest hop count is considered as the best route to reach a network and therefore placed in the routing table. RIP prevents routing loops by limiting the number of hops allowed in a path from source and destination. The maximum hop count allowed for RIP is 15 and a hop count of 16 is considered as network unreachable. 
1. Updates of the network are exchanged periodically. 2. Updates (routing information) are always broadcast. 3. Full routing tables are sent in updates. 4. Routers always trust routing information received from neighbor routers. This is also known as Routing on rumors. 
There are three versions of routing information protocol – RIP Version1, RIP Version2, and RIPng. 
RIP v1 is known as Classful Routing Protocol because it doesn’t send information of subnet mask in its routing update. RIP v2 is known as Classless Routing Protocol because it sends information of subnet mask in its routing update.  
>> Use debug command to get the details : 
 # debug ip rip 
>> Use this command to show all routes configured in router, say for router R1 :  
R1# show ip route
>> Use this command to show all protocols configured in router, say for router R1 :  
R1# show ip protocols
Consider the above-given topology which has 3-routers R1, R2, R3. R1 has IP address 172.16.10.6/30 on s0/0/1, 192.168.20.1/24 on fa0/0. R2 has IP address 172.16.10.2/30 on s0/0/0, 192.168.10.1/24 on fa0/0. R3 has IP address 172.16.10.5/30 on s0/1, 172.16.10.1/30 on s0/0, 10.10.10.1/24 on fa0/0. 
Configure RIP for R1 : 
R1(config)# router rip
R1(config-router)# network 192.168.20.0
R1(config-router)# network 172.16.10.4
R1(config-router)# version 2
R1(config-router)# no auto-summary
Note: no auto-summary command disables the auto-summarisation. If we don’t select any auto-summary, then the subnet mask will be considered as classful in Version 1. 
Configuring RIP for R2:  
R2(config)# router rip
R2(config-router)# network 192.168.10.0
R2(config-router)# network 172.16.10.0
R2(config-router)# version 2
R2(config-router)# no auto-summary
Similarly, Configure RIP for R3 :  
R3(config)# router rip
R3(config-router)# network 10.10.10.0
R3(config-router)# network 172.16.10.4
R3(config-router)# network 172.16.10.0
R3(config-router)# version 2
R3(config-router)# no auto-summary
Update timer: The default timing for routing information being exchanged by the routers operating RIP is 30 seconds. Using an Update timer, the routers exchange their routing table periodically.
Invalid timer: If no update comes until 180 seconds, then the destination router considers it invalid. In this scenario, the destination router mark hop counts as 16 for that router.
Hold down timer: This is the time for which the router waits for a neighbor router to respond. If the router isn’t able to respond within a given time then it is declared dead. It is 180 seconds by default.
Flush time: It is the time after which the entry of the route will be flushed if it doesn’t respond within the flush time. It is 60 seconds by default. This timer starts after the route has been declared invalid and after 60 seconds i.e time will be 180 + 60 = 240 seconds.
Note that all these times are adjustable. Use this command to change the timers :  
R1(config-router)#  timers basic
R1(config-router)#  timers basic 20   80    80    90  
 
ayonika
surindertarika1234
shobhitsinha
23603vaibhav2021
suyashsharma19
pall58183
bhawnachelani123
Computer Networks-Network Layer
Computer Networks
Computer Networks
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
GSM in Wireless Communication
Socket Programming in Python
Differences between IPv4 and IPv6
Secure Socket Layer (SSL)
Wireless Application Protocol
Mobile Internet Protocol (or Mobile IP)
UDP Server-Client implementation in C
Caesar Cipher in Cryptography
Advanced Encryption Standard (AES)