skip to main | skip to sidebar

Monday, July 7, 2008

Routing Protocols RIP and IGRP

In global configuration mode enter router ? to see the available routing protocols. Router3>en Router3#conf t Enter configuration commands, one per line. End with CNTL/Z. Router3(config)#router ? bgp Border Gateway Protocol (BGP) egp Exterior Gateway Protocol (EGP) eigrp Enhanced Interior Gateway Routing Protocol (EIGRP) igrp Interior Gateway Routing Protocol (IGRP) isis ISO IS-IS iso-igrp IGRP for OSI networks mobile Mobile routes odr On Demand stub Routes ospf Open Shortest Path First (OSPF) rip Routing Information Protocol (RIP) static Static routes
Routing Information Protocol (RIP)
The Routing Information Protocol (RIP) is a distance-vector protocol that uses hop count as its metric. RIP is widely used for routing traffic in the global Internet and is an interior gateway protocol (IGP), which means that it performs routing within a single autonomous system. RIP only uses hop count to determine the best route to a remote network, RIP has a maximum hop count of 15, 16 is deemed unreachable. RIP works well in small internetworks, but is inefficient for large networks. RIP is susceptible to all the problems normally associated with distance vector routing protocols. It is slow to converge and forces routers to learn network information only from neighbors. RIP version 1 uses classful routing (all devices in the network must use the same subnet mask because RIP version 1 doesn't send updates with subnet information). RIP version 2 uses classless routing and does send subnet mask information with route updates. RIP networks need the same hop count to load balance multiple links.
Routing Updates
RIP sends its complete routing table out to all active interfaces at regular intervals (every 30 seconds) and when the network topology changes. When a router receives a routing update that includes changes to an entry, it updates its routing table to reflect the new route. The metric value for the path is increased by one, and the sender is indicated as the next hop. RIP routers maintain only the best route (the route with the lowest metric value) to a destination. After updating its routing table, the router immediately begins transmitting routing updates to inform other network routers of the change. These updates are sent independently of the regularly scheduled updates that RIP routers send.
RIP Routing Metric
RIP uses a single routing metric (hop count) to measure the distance between the source and a destination network. Each hop in a path from source to destination is assigned a hop-count value, which is typically 1. When a router receives a routing update that contains a new or changed destination-network entry, the router adds one to the metric value indicated in the update and enters the network in the routing table. The IP address of the sender is used as the next hop.
RIP prevents routing loops from continuing indefinitely by implementing a limit on the number of hops allowed in a path from the source to a destination (15 hops). If a router receives a routing update that contains a new or changed entry, and if increasing the metric value by one causes the metric to be infinity (that is, 16), the network destination is considered unreachable.
Stability Features
To adjust for rapid network-topology changes, RIP specifies a number of stability features that are common to many routing protocols. RIP, for example, implements the split-horizon and hold-down mechanisms to prevent incorrect routing information from being propagated. In addition, the RIP hop-count limit prevents routing loops from continuing indefinitely.
RIP Timers
Route Update Timer - The routing-update timer clocks the interval between periodic routing updates. It is usually set to 30 seconds.
Route Invalid TImer - The Route Invalid Timer determines the length of time (90 seconds) before a route is considered invalid. If it doesn't receive an update for the route it sets the route as invalid and notifies its neighbors.
Route Flush Timer - The Route Flush Timer sets the time between when a route becomes invalid and its removal from the routing table (240 seconds). Time must be longer than invalid timer so it can tell its neighbors about the route.
Configuring RIP

Using the sample network below, we'll enable RIP routing for the network.
The network's configuration is as follows:
Router
Interface Addresses
Network to Next Hop Router
Router1
E0 - 172.20.10.1 /24S0 - 172.20.1.1 /24
Router1 to Router2172.20.1.0/24
Router2
E0 - 172.20.20.1 /24S0 - 172.20.1.2 /24S1 - 172.20.2.1 /24
Router2 to Router1 172.20.1.0/24 Router2 to Router3 172.20.2.0/24
Router3
E0 - 172.20.30.1 /24E1 - 172.20.35.1 /24S0 - 172.20.2.2 /24
Router3 to Router2 172.20.2.0/24
Use the command router rip and tell the RIP protocol which network to advertise (network ). Routers send RIP version 1 by default and RIP v.1 is classful, which means all the devices in the network need to use the same subnet mask. The network is entered in using the classful boundary and RIP will find the subnets to advertise since all the networks are using the same subnet mask (/24). Below is the actual configuration for the above sample network, the interface configurations are also shown for completeness.
Router1 Router1> enable Router1# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router1(config)# interface e0 Router1(config-if)# ip address 172.20.10.1 255.255.255.0 Router1(config-if)# no shutdown Router1(config-if)# interface s0 Router1(config-if)# ip address 172.20.1.1 255.255.255.0 Router1(config-if)# no shutdown Router1(config-if)# exit Router1(config)# router rip Router1(config-router)# network 172.20.0.0
Router2 Router2> enable Router2# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router2(config)# interface e0 Router2(config-if)# ip address 172.20.20.1 255.255.255.0 Router2(config-if)# no shutdown Router2(config-if)# interface s0 Router2(config-if)# ip address 172.20.1.2 255.255.255.0 Router2(config-if)# no shutdown Router2(config-if)# interface s1 Router2(config-if)# ip address 172.20.2.1 255.255.255.0 Router2(config-if)# no shutdown Router2(config-if)# exit Router2(config)# router rip Router2(config-router)# network 172.20.0.0
Router3 Router3> enable Router3# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router3(config)# interface e0 Router3(config-if)# ip address 172.20.30.1 255.255.255.0 Router3(config-if)# no shutdown Router3(config-if)# interface e1 Router3(config-if)# ip address 172.20.35.1 255.255.255.0 Router3(config-if)# no shutdown Router3(config-if)# interface s0 Router3(config-if)# ip address 172.20.2.2 255.255.255.0 Router3(config-if)# no shutdown Router3(config-if)# exit Router3(config)# router rip Router3(config-router)# network 172.20.0.0
Viewing the routing table
You can use the show ip route command to view the router's routing table. Router3#show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default U - per-user static route, o - ODR Gateway of last resort is not set 172.20.0.0/24 is subnetted, 6 subnets R 172.20.1.0 [120/2] via 172.20.2.1, 00:00:04, Serial0 R 172.20.10.0 [120/2] via 172.20.2.1, 00:00:04, Serial0 R 172.20.20.0 [120/2] via 172.20.2.1, 00:00:04, Serial0 C 172.20.2.0 is directly connected, Serial0 C 172.20.35.0 is directly connected, Ethernet1 C 172.20.30.0 is directly connected, Ethernet0
Stopping RIP Propagation
Use the passive-interface command to stop RIP broadcasts from going out an interface. The interface will still receive RIP updates, but it won't send them on the network that the interface is connected to. Router3(config)# router rip Router3(config-router)# passive-interface serial 1
Interior Gateway Routing Protocol (IGRP)
The Interior Gateway Routing Protocol (IGRP) is a proprietary routing protocol that was developed in the mid-1980s by Cisco Systems, Inc. Cisco's principal goal in creating IGRP was to provide a robust protocol for routing within an autonomous system (AS). IGRP has a maximum hop count of 255, but defaults to 100. IGRP uses bandwidth and line delay by default for determining the best route in an internetwork (Composite Metric).
IGRP Protocol Characteristics
IGRP is a distance-vector interior gateway protocol (IGP). Distance-vector routing protocols call for each router to send all or a portion of its routing table in a routing-update message at regular intervals (every 90 seconds) to each of its neighboring routers. As routing information proliferates through the network, routers can calculate distances to all nodes within the internetwork. IGRP uses a combination (vector) of metrics. Internetwork delay, bandwidth, reliability, and load are all factored into the routing decision. Network administrators can set the weighting factors for each of these metrics. IGRP uses either the administrator-set or the default weightings to automatically calculate optimal routes.
Stability Features
IGRP provides a number of features that are designed to enhance its stability. These include hold-downs, split horizons, and poison-reverse updates.
Hold-downs are used to prevent regular update messages from inappropriately reinstating a route that might have gone bad. When a router goes down, neighboring routers detect this via the lack of regularly scheduled update messages. These routers then calculate new routes and send routing update messages to inform their neighbors of the route change. This activity begins a wave of triggered updates that filter through the network. These triggered updates do not instantly arrive at every network device, so it is therefore possible for a device that has yet to be informed of a network failure to send a regular update message (indicating that a route that has just gone down is still good) to a device that has just been notified of the network failure. In this case, the latter device would contain (and potentially advertise) incorrect routing information. Hold-downs tell routers to hold down any changes that might affect routes for some period of time. The hold-down period usually is calculated to be just greater than the period of time necessary to update the entire network with a routing change.
Split horizons derive from the premise that it is never useful to send information about a route back in the direction from which it came. Although hold-downs should prevent this, split horizons are implemented in IGRP because they provide extra algorithm stability.
Split horizons should prevent routing loops between adjacent routers, but poison-reverse updates are necessary to defeat larger routing loops. Increases in routing metrics generally indicate routing loops. Poison-reverse updates then are sent to remove the route and place it in hold-down. In Cisco's implementation of IGRP, poison-reverse updates are sent if a route metric has increased by a factor of 1.1 or greater.
IGRP Timers
Update Timer - The update timer specifies how frequently routing update messages should be sent. The IGRP default for this variable is 90 seconds.
Invalid Timer - The invalid timer specifies how long a router should wait, in the absence of routing-update messages about a specific route before declaring that route invalid. The IGRP default for this variable is three times the update period.
Hold down Timer- The hold-time variable specifies the hold-down period. The IGRP default for this variable is three times the update timer period plus 10 seconds.
Flush Timer - Finally, the flush timer indicates how much time should pass before a route should be flushed from the routing table. The IGRP default is seven times the routing update period.
Configuring IGRP
Same as RIP except you need an Autonomous System (AS) number when specifying the routing protocol. All routers in the same Autonomous System need the same AS in order to communicate with each other. If your network doesn't already have an autonomous number, you are free to use any one you like. Router3> enable Router3# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router3(config)# router igrp ? <1-65535> Autonomous system number Router3(config)# router igrp 200 Router3(config-router)# network 172.30.0.0
Load Balancing
To provide additional flexibility, IGRP permits multipath routing. Dual equal-bandwidth lines can run a single stream of traffic in round-robin fashion, with automatic switchover to the second line if one line goes down. Also, multiple paths can be used even if the metrics for the paths are different. If, for example, one path is three times better than another because its metric is three times lower, the better path will be used three times as often. Only routes with metrics that are within a certain range of the best route are used as multiple paths. IGRP can load balance up to 6 unequal links. To load balance IGRP over unequal links the variance command is needed to control the load balancing between the best metric and the worst acceptable metric.traffic shared balanced command is used to have the routers share inversely proportional to the metrics (i.e. balanced).traffic shared min command tells the IGRP routing process to use routes that have only minimum costs. Router3# conf t Enter configuration commands, one per line. End with CNTL/Z. Router3(config)# router igrp 5 Router3(config-router)# variance 20 Router3(config-router)# traffic-share balanced Router3(config-router)# traffic-share min
Verifying Configurations
The show protocols command shows the network layer addresses for each interface. Router1# show protocols Global values: Internet Protocol routing is enabled Ethernet0 is up, line protocol is up Internet address is 192.168.1.1/24 Serial0 is up, line protocol is up Internet address is 10.128.22.1/24 Serial1 is up, line protocol is up Internet address is 10.128.23.1/24
The show ip protocols command shows the routing protocols that are configured on the router. Information includes the Autonomous System number, routing timers, networks being advertised, gateways, and administrative distances. Router1#show ip protocols Routing Protocol is "rip" Sending updates every 30 seconds, next due in 25 seconds Invalid after 180 seconds, hold down 180, flushed after 240 Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Redistributing: rip Default version control: send version 1, receive any version Interface Send Recv Key-chain Ethernet0 1 1 2 Serial0 1 1 2 TokenRing0 1 1 2 Routing for Networks: 10.128.22.0 Routing Information Sources: Gateway Distance Last Update 10.128.22.3 120 00:00:03 Distance: (default is 120)
The debug ip rip command displays routing updates as they are sent and received to the console screen. This command places very high processing demands on your router and could affect network performance. If you are using telnet to configure the router, you will need to use the terminal monitor command to see the output from debug. Turn off debugging with the undebug all or nodebug all commands
The debug ip igrp [events transactions] command is used to display routing information for IGRP.
The events command shows a summary of the IGRP routing info that is running on the network. Information about individual routers isn't shown with this command.
The transactions command show message requests from neighbor routers asking for updates and the broadcasts sent to them.
Turn off debugging with the undebug all or nodebug all commands

0 comments: