While RIP is not used for the 'real' Internet routing, and hasn't been for many years, we often use RIP to do testing as it is so quick and easy to configure the protocol. Also, if you are learning shortest path routing for the first time, RIP is a great place to start as it is not as complex as other routing protocols.
Let's jump in and look at the fundamental configuration and some options:
1. The first thing to do is to enable the RIP protocol on the router with the ‘router rip’ command once in configuration mode.
2. Next, we want to identify the networks to be advertised using the ‘network XXX.XXX.XXX.XXX’ command. Using this command, you need to identify only the networks that are directly connected to the router.
And remember to write only the supernet if you have a group of subnets. For example, if you have the following subnets connected to the router (172.16.0.0, 172.16.1.0, and 172.16.2.0). You can put them all in single ‘network’ command like this:
You can notice that only three subnets of the supernet are connected to the router, and despite that, we wrote the supernet in the ‘network’ command. The router is intelligent enough to figure it out.
3. One of the options in RIP is to adjust timers. RIP advertises routes on a default 30 second timer. In the old days, this was done to minimize traffic volume, but the down side is that an interface can fail, and, worst case, we won't know about it for 29 seconds!
If you need to adjust the timers (update, invalid, holddown, and flush timers) use the ‘timers basic’ command. All the four parameters of this command; update, invalid, holddwon, and flush timer consequently, are in seconds.
Cell_Router(config-router)#timers basic 30 180 180 240
The example above is set with the default values of the RIP timers. Remember to keep the relativity of the timer values. Always keep it n 6n 6n 8n. If, for example, you set the update timer to 40, you need to make the other timers 240 240 320 consequently.
4. By default, RIP wants to discover anything connected to the router! You may need to stop this discovery and the updates from being broadcasted to the some interfaces like one going out to the public internet. For this purpose, use the ‘passive interface’ command. This command prevents the interface from forwarding any RIP broadcasts, but keeps the interface listening to what others are saying in RIP.
5. RIP, by nature, sends updates as broadcast. If the router is connected through non-broadcast networks (like FrameRelay), you will need to tell RIP to send the updates on this network as unicast. This is achieved by the ‘neighbor’ command.
Where XXX.XXX.XXX.XXX is the IP address of the neighbor.
6. Cisco's implementation of RIP Version 2 supports authentication, key management, route summarization, classless interdomain routing (CIDR), and variable-length subnet masks (VLSMs). By default, the software receives RIP Version 1 and Version 2 packets, but sends only Version 1 packets. You can configure the software to receive and send only Version 1 packets. Alternatively, you can configure the software to receive and send only Version 2 packets. To do so, use the ‘version’ command.
And if you like to stick to version one, just replace the 2 in the command above with 1.
Furthermore, you can control the versions of the updates sent and received on each interface to have more flexibility in support both versions. This is achieved by the ‘ip rip send version’ and ‘ip rip receive version’ commands.
Cell_Router(config-if)#ip rip send version 2
Cell_Router(config-if)#ip rip receive version 1
7. Lastly, to check the RIP configuration using the ‘show ip route’, ‘show ip protocols’, and ‘debug ip rip’ commands.
We hope this helps get you started with RIP.