How to Configure Routing Information Protocol: RIPv2

- select the contributor at the end of the page -
This article concentrates on the enhanced Routing Information Protocol, also known as RIP version 2. I will show you the necessary configuration steps for RIPv2 so that you will be able to configure RIP on your own.

Last time we covered RIP version 1, which included information on RIP operation, drawbacks, configuration, and much more.

Today, we shift focus to RIPv2 and to illustrate the configuration steps I will use the same example I used in the first article, just for simplicity. I'll also give you a brief overview of the most important parts of both versions of RIP, which should be very useful for all of you out there studying for the CCENT and CCNA exams.

Routing Information Protocol Version 2

Both versions of RIP, RIPv1 and RIPv2, are Distance Vector Routing Protocols that use router hop counts as their metrics. They support a maximum hop count value of 15. Any router farther than 15 hops away is considered to be unreachable.

The main enhancement of RIPv2 over its ancestor is the fact that it first sends the subnet mask with the updates; hence it is considered to be a classless routing protocol in the sense that it is able to distinguish among different subnets - which is something that is not found in RIPv1.

The following table presents in more details the main characteristics of RIPv2:

Cisco RIP 1

Configuring RIPv2

As I mentioned before, I'll be using the same network diagram that I used in configuring RIPv1.

Configuring RIP routing protocol consists of three basic steps:

  • Enabling RIP routing protocol on the router
  • Specifying the RIP version to run
  • Configuring the network addresses to be included in routing updates or specifying the interfaces to participate in routing updates

Using the Cisco IOS, the command to enable RIP routing protocol is router rip. The version command is used to specify which RIP version to use (either 1 or 2). If the version command is omitted then the router defaults to sending RIPv1 but can receive both RIPv1 and RIPv2.

The network command is used to specify the directly connected subnets on the router to be configured and that are intended to be included in the routing updates. This is a good time to point out that you still specify classful networks with the network command.

According to the classful, network specified, the subnets of that network are automatically identified and participate in the routing update. By default routing updates are summarized at network boundaries.

In RIPv2 this auto summarization behavior can be turned off using the no auto-summary command. Moreover, manual summarization can be configured on a per interface level.

Let's see how we can configure RIPv2 on our small network:

RouterA(config)#router rip

RouterA(config-router)#version 2




RouterA(config-router)#no auto-summary

To configure RIPv2 on RouterB we use the following commands:

RouterB(config)#router rip

RouterB(config-router)#version 2




RouterA(config-router)#no auto-summary

No auto-summary command on RouterB forces the advertisement of two different subnets from different interfaces ( and within the same network. By applying the above configuration on RouterB you have accomplished the advertisement of the following subnets:

Finally to configure RIPv2 on RouterC we issue the following:

RouterC(config)#router rip

RouterC(config-router)#version 2



RouterC(config-router)#no auto-summary

You can also manually configure routing summarization per interface. For example, you could specify on RouterC the summary address to use on its FE1 interface using the following commands:

RouterC(config)#router rip

RouterC(config-router)#version 2

RouterC(config-router)#no auto-summary

RouterC(config)#int FE1

RouterC(config-if)#ip summary-address rip

At any time you can manually stop RIP messages from being broadcasted out a specific interface. For example, if you wanted to forbid RouterCs FE1 to participate into RIP updates you can use the following commands:

RouterC(config)#router rip

RouterC(config-router)#passive-interface FE1

Moreover, you can override the routers' global rip version setting and specify the version on a per interface basis. For example, if you wanted to specify on RouterCs FE1 interface the transmission of RIP version 2 and reception of RIP version 1 messages you should apply the following commands:

RouterC(config-if)#ip rip send version 2

RouterC(config-if)#ip rip receive version 1

RIPv2 Support for Discontiguous Subnets

The capability to populate subnet masks along with the routes and at the same time the capability to disable auto-summarization provides the perfect solution to the problem of discontiguous subnets (subnets from the same major network

address separated by a different network).

To better understand the enhanced capabilities or RIPv2 consider the following network case scenario:

Looking at the above diagram you can see that subnets and which belong to the same classful network are separated by network hence they are considered to be discontiguous networks.

Due to RIPs classless behavior routing between these networks can be performed without any problems. To be able to do so, you have to disable RIPv2 default behavior of auto summarization so that the appropriate subnet masks can be propagated and update the routing table in each of the routers.

Comparing RIPv1 and RIPv2

To appropriately terminate the series on the RIP protocol - and to help you study for your Cisco exams - I'll summarize the major differences between the two RIP versions in a tabular format. And hopefully, this will be a quick and easy way for you to make up your mind on the right RIP version to use in any situation.

Ready to test your skills in TCP/IP? See how they stack up with this assessment from Smarterer, the newest addition to the Pluralsight family. Start this TCP/IP test now.


Get our content first. In your inbox.


Stelios Antoniou

(CCNA, NET+, MOUS) holds a BSc in Electronic Engineering and an MSc in Communication Networks. He has over three years of experience in teaching MS Office applications, networking courses and GCE courses in Information Technology. Stelios is currently working as a VoIP Engineer in a Telecom company, where he uses his knowledge in practice. He has successfully completed training on CCNP topics, Linux and IMS. His enthusiasm, ambition and knowledge motivate him to offer his best. Stelios has written many articles covering Cisco CCENT, CCNA, and CCNP.