Network Routing
How to configure RIPv1
Day 1 at your new job as network engineer, and you got your first task. Configure routings on all routers in the topology below for full network connectivty.
Well, if we are to configure static routes here; this would be my first reaction.
Thankfully, we have dynamic routing protocols that simplify configurations of complex networks. Dynamic routing offload the trouble of having to find all destination networks manually; besides automatically detect bad paths and select best paths. So, what’s not to love about it?
In this story, we will demonstrate how to configure RIPv1 to connect all the LANs in the topology shown above.
Routing Information Protocol Version 1 (RIPv1)
RIPv1 is a distance vector protocol. A few fun facts about RIPv1:
(a) RIPv1 is a classful protocol — meaning that if we use VLSM in our network addressing design; RIPv1 won’t work properly → fixed in RIPv2
(b) RIPv1 is easy to configure; only 1 parameter is needed to specify RIPv1 routes — that is the network address of directly connected networks
(c) Since RIPv1 is classful, there is no need to specify network mask when configuring RIPv1 routes
(d) RIPv1 routers automatically exchange routing tables periodically; every 30s to update the topology information — no triggered updates; so any network changes within the 30s have to wait to be updated
(e) RIPv1, being a distance vector protocol — finds the best path to the destination networks based on hop counts
(f) RIPv1 can also detect bad paths based on routing table updates
(g) RIPv1 use broadcast to exchange routing tables; this means more network overhead to unnecessary nodes
(h) RIPv1 max hop counts is 15; this means that if we are trying to reach a network that is 16 hops or more away; RIPv1 won’t be able to reach these networks
(i) RIPv2 is backward compatible with RIPv1. Phew! This means that we can run both RIPv1 and RIPv2 on the same router
Configuring RIPv1
We will demonstrate the configurations command using a simpler network topology for clarity.
The rule of thumb to configure RIPv1 is to find all the networks that are directly connected to the routers. In RIPv1, we only specify the network address of directly connected networks on each router to set a route.
Here’s the command to configure RIPv1 route:
Router(config)#router rip
Router(config-router)#network address
In this example, there are 4 LANs and 3 Routers. We need to configure RIPv1 on all of the routers here for full connectivity. Intuitively, the first step is to find out the directly connected networks. We show directly connected networks of each router in green; and remote networks in grey.
Router0
Router1
Router2
Here’s the summary of the directly connected networks for each router:
Router0
==============
LAN1 and LAN4Router1
=============
LAN2 and LAN4Router2
=============
LAN3 and LAN4
To configure RIPv1; we simply specify the network addresses of these networks on each router. Here’s the configuration for all the routers.
Router0
========
router rip
network 192.168.1.0 <-- LAN1’s Net Address
network 200.1.1.0 <-- LAN4’s Net Address
exit
Router1
========
router rip
network 192.168.2.0 <-- LAN2’s Net Address
network 200.1.1.0 <-- LAN4’s Net Address
exit
Router2
========
router rip
network 192.168.3.0 <-- LAN3’s Net Address
network 200.1.1.0 <-- LAN4’s Net Address
exit
After configuring these routes; it is always a good idea to check if the routes are configured correctly. To do so, we examine the routing tables on each router to check if the RIPv1 routes are found. RIPv1 routes will be tagged as ‘R’ in the routing table. The command to show routing table is:
en
show ip route
Let’s take a look at routing tables of all the routers. Note that RIPv1 routes will not show up if one of the RIP router is configured wrongly. This is because the misconfigured router will not send its routing table to other routers (that are configured correctly).
Tricks to Find Directly Connected Networks Quickly
Since the key to configure RIPv1 is to find out all the directly connected networks; it would be helpful for us to do this quickly for faster configurations. The simple trick is to check for all the directly connected networks on a router in the routing table. Since routers automatically detects new networks connected to it as directly connected, which is tagged as ‘C’ in the routing table — we simply specify all these networks with ‘C’ when configuring RIPv1.
For example, we have two ‘C’ in Router0’s table — that is 192.168.1.0/24 and 200.1.1.0/24.
This means we simply configure these two networks address when configuring RIPv1 on Router0.