How to Configure IGRP (Interior Gateway Routing Protocol)?

Interior Gateway Routing Protocol (IGRP) is a distance vector interior routing protocol (IGP) invented by Cisco. It is used by routers to exchange routing data within an autonomous system.

IGRP is a proprietary protocol. IGRP was created in part to overcome the limitations of RIP (maximum hop count of only 15, and a single routing metric) when used within large networks. IGRP supports multiple metrics for each route, including bandwidth, delay, load, MTU, and reliability; to compare two routes these metrics are combined together into a single metric, using a formula which can be adjusted through the use of pre-set constants. The maximum hop count of IGRP-routed packets is 255 (default 100), and routing updates are broadcast every 90 seconds (by default).

IGRP is considered a classful routing protocol. Because the protocol has no field for a subnet mask, the router assumes that all sub network addresses within the same Class A, Class B, or Class C network have the same subnet mask as the subnet mask configured for the interfaces in question. This contrasts with classless routing protocols that can use variable length subnet masks. Classful protocols have become less popular as they are wasteful of IP address space.

In order to address the issues of address space and other factors, Cisco created EIGRP (Enhanced Interior Gateway Routing Protocol). EIGRP adds support for VLSM (variable length subnet mask) and adds the Diffusing Update Algorithm (DUAL) in order to improve routing and provide a loopless environment. EIGRP has completely replaced IGRP, making IGRP an obsolete routing protocol. In Cisco IOS versions 12.3 and greater, IGRP is completely unsupported. In the new Cisco CCNA curriculum (version 4), IGRP is mentioned only briefly, as an “obsolete protocol”.

The IGRP protocol allows a number of gateways to coordinate their routing. Its goals are the following:

  • Stable routing even in very large or complex networks. No routing loops should occur, even as transients.
  • Fast response to changes in network topology.
  • Low overhead. That is, IGRP itself should not use more bandwidth than what is actually needed for its task.
  • Splitting traffic among several parallel routes when they are of roughly equal desirability.
  • Taking into account error rates and level of traffic on different paths.

A very simple configuration of IGRP can be:

Router A

RouterA# conf t

RouterA(config)# interface eth0

RouterA(config-if)# ip address 70.0.0.1 255.0.0.0

RouterA(config-if)# exit

RouterA(config)# interface serial0

RouterA(config-if)# ip address 20.30.40.2 255.255.255.252

RouterA(config-if)# exit

RouterA(config)# router igrp 1

RouterA(config-router)# redistribute connected

RouterA(config-router)# network 20.0.0.0

RouterA(config-router)# network 70.0.0.0

RouterA(config-router)# network 71.0.0.0

Router B

RouterB# conf t

RouterB(config)# interface eth0

RouterB(config-if)# ip address 71.0.0.1 255.0.0.0

RouterB(config-if)# exit

RouterB(config)# interface serial0

RouterA(config-if)# ip address 20.30.40.1 255.255.255.252

RouterA(config-if)# exit

RouterA(config)# router igrp 1

RouterA(config-router)# redistribute connected

RouterA(config-router)# network 20.0.0.0

RouterA(config-router)# network 70.0.0.0

RouterA(config-router)# network 71.0.0.0

A few other commands might come in useful. Variance 2 can be used to configure IGRP to load balance between equal cost paths. The command passive-interface eth0 disables IGRP from sending updates out of eth0.

Testing

router# debug ip igrp events

Only shows the sending or receiving of IGRP packets and the number of routes in each update. It does show the routes that are advertised!

router# debug ip igrp transactions

Sames as debug ip igrp events but also shows the routes that are advertised.

router# show ip route

As with debugging any routing problem, look at the routing table. Is there a static route that takes precendece?

router# show ip interface brief

This command is always useful to quickly verify which links are and which aren’t.

More Related Reference:

Configuring IGRP

An Introduction to IGRP

IGRP Commands

More Cisco Routing Protocol Tips:

Basic Information of Configuring HSRP on a Cisco Router

How to Configure GLBP in Cisco IOS Routers?

How to Configure GLBP?

How to Configure Dual ISP on Cisco ASA 5505?

Share This Post

Post Comment