distance vactor routing protocol rip
TRANSCRIPT
-
8/14/2019 Distance Vactor Routing Protocol Rip
1/134
-
8/14/2019 Distance Vactor Routing Protocol Rip
2/134
Rick Graziani [email protected] 2
Note to instructors
If you have downloaded this presentation from the Cisco NetworkingAcademy Community FTP Center, this may not be my latest version of this PowerPoint.
For the latest PowerPoints for all my CCNA, CCNP, and Wirelessclasses, please go to my web site:
http://www.cabrillo.cc.ca.us/~rgraziani/ The username is cisco and the password is perlman for all of
my materials. If you have any questions on any of my materials or the curriculum,
please feel free to email me at [email protected] (I really dontmind helping.) Also, if you run across any typos or errors in mypresentations, please let me know.
I will add (Updated date ) next to each presentation on my web sitethat has been updated since these have been uploaded to the FTPcenter.
Thanks! Rick
-
8/14/2019 Distance Vactor Routing Protocol Rip
3/134
Rick Graziani [email protected] 3
Overview
Describe how routing loops can occur in distance vector routing Describe several methods used by distance vector routing protocols to ensure
that routing information is accurate Configure RIP Use the ip classless command
Troubleshoot RIP
Configure RIP for load balancing Configure static routes for RIP Verify RIP Configure IGRP (Part II) Verify IGRP operation (Part II) Troubleshoot IGRP (Part II)
-
8/14/2019 Distance Vactor Routing Protocol Rip
4/134
Rick Graziani [email protected] 4
Distance Vector Routing Updates
-
8/14/2019 Distance Vactor Routing Protocol Rip
5/134
Rick Graziani [email protected] 5
Distance Vector Routing Updates
RIP Hop Count IGRP and EIGRP Bandwidth, Delay, Reliability, Load Ciscos OSPF Bandwidth IS-IS Cost
BGP Number of AS or policy
No! MTU is never used as a routingmetric. Somedocumentation isincorrect on this
item.
-
8/14/2019 Distance Vactor Routing Protocol Rip
6/134
Rick Graziani [email protected] 6
FAQs
FAQs Network Discovery Q: How often does initial network discovery happen?
A: Only when the network comes first comes up.
Q: Do routers share routing table information after network discovery? A: Yes, distance-vector routing protocols share their entire routing tables
periodically (with or without split horizon enabled). Distance vector routing protocols on Cisco routers by default use split horizon with poison reverse(discussed in the next section). Depending upon the distance-vector routing
protocol, the frequency of the updates will happen for RIP every 30 seconds,IPX RIP every 60 seconds, and IGRP every 90 seconds.
Q: What happens when there is a change in the topology, link goes down, new network is added, new router, is added, etc.?
A: Lets take a look.
-
8/14/2019 Distance Vactor Routing Protocol Rip
7/134Rick Graziani [email protected] 7
Triggered Updates - Extra
Triggered Updates Routers do not have to wait for the periodic update to hear about
changes in the network topology. Improvements to the distance-vector algorithm is typically made in
distance-vector routing protocols, like RIP, to include triggeredupdates .
Even with triggered updates, large distance vector networks can suffer from long convergence times in some situations.
-
8/14/2019 Distance Vactor Routing Protocol Rip
8/134Rick Graziani [email protected] 8
Triggered Updates
Triggered updates are sent whenever a router sees a topology changeor a change in routing information (from another router).
The router does not have to wait for the period timer, but can sendthem immediately. Triggered updates do not need to include the entire routing table but
only the modified route(s). Triggered updates must still be sent to adjacent routers, from router to
router, like other routing updates.
-
8/14/2019 Distance Vactor Routing Protocol Rip
9/134Rick Graziani [email protected] 9
Triggered Updates
Most distance-vector routing protocols limit the frequency of triggeredupdates so that a flapping link does not put an unnecessary load onthe network. (RIP: random 1 to 5 seconds)
Typically, triggered updates can be triggered by: Interface transition to the up or down state A route has entered or exited an unreachable (down) state (later) A new route is installed in the routing table
-
8/14/2019 Distance Vactor Routing Protocol Rip
10/134Rick Graziani [email protected] 10
Routing Loop Issues
Routing Loops Distance vector routing protocols are simple in their implementation and configuration,
but this comes at a price. Pure distance vector routing protocols suffer from possible routing loops. Routing loops can cause major network problems, from packets getting lost (blackholed)
in your network, to bringing down your entire network. Several remedies to have been added to distance-vector algorithms to help prevent
routing loops including: Split horizon
Hold-down timers Defining a maximum metric
-
8/14/2019 Distance Vactor Routing Protocol Rip
11/134Rick Graziani [email protected] 11
Routing Loop Issues
What can cause routing loops? Routing loops can occur when there are:
Incorrect or inconsistent routing updates due to slow convergence after atopology change. (Example coming up next.) Incorrect or incomplete routing information (see presentation on Discard
Routes) Static routes incorrectly configured with an intermediate address which
does not become resolved in the routing table. (see presentation on Static
Routes Additional Information)
-
8/14/2019 Distance Vactor Routing Protocol Rip
12/134
-
8/14/2019 Distance Vactor Routing Protocol Rip
13/134Rick Graziani [email protected] 13
Routing Loop Issues
Network 1 Fails Router E sends an update to Router A. Router A stops routing packets to network 1. But Routers B, C, and D continue to do so because they have not yet been
informed about the failure. Router A sends out its update. Routers B and D stop routing to network1, (via Router A). However, Router C is still not updated.
To router C, network 1 is still reachable via router B.
-
8/14/2019 Distance Vactor Routing Protocol Rip
14/134Rick Graziani [email protected] 14
Routing Loop Issues
Router C sends a periodic update to Router D Router C sends a periodic update to Router D indicating a path to network 1
(by way) of via Router B. (4 hops).
Router Ds Routing Table information for Network 1 Current path to Network 1 = Unreachable (down) Information from Router C: Network 1 : 4 hops by way of Router C Normally, RouterD ignores this routing information because it usually has a
better route, 2 hops, via Router A, but this route is now down. Router D changes its routing table to reflect this (good) better , but incorrect
information , Network 1 by way of Router C (4 hops) Router D propagates the information to Router A.
-
8/14/2019 Distance Vactor Routing Protocol Rip
15/134Rick Graziani [email protected] 15
Routing Loop Issues
Routers A changes its routing table Router A adds new route to its routing table, get to Network 1 by way of Router
D (5 hops). Propagates the information to Routers B and E.Router B (and Router E) change their routing tables Router B now believes it can get to Network 1 by way of Router A (6 hops).
Wow! I was about to tell Router C that Network 1 was down via Router B, but now I have new information!
Propagates the incorrect information to Router C.
-
8/14/2019 Distance Vactor Routing Protocol Rip
16/134Rick Graziani [email protected] 16
Routing Loop Issues
Router C changes its routing table Router C still believes it can get to Network 1 by way of Router B (7 hops).
Of course now it believes it is 7 hops instead of 3.
Propagates the newer but still incorrect information to Router D.
Here we go again! Data packets destined for Network 1 get caught in a routing loop, from Routers
A to D to C to B to A to D etc. As routing updates continue between the routers, the hop count gets greater
to infinity? (Not quite we will see in a moment.)
-
8/14/2019 Distance Vactor Routing Protocol Rip
17/134Rick Graziani [email protected] 17
Defining a Maximum
Problem : Count to infinitySolution : Defining a Maximum Distance vector routing algorithms are self-correcting, but a routing loop
problem can require a count to infinity. To avoid this prolonged problem, distance vector protocols define infinity as a
specific maximum number. This number refers to a routing metric which may simply be the hop count. When the metric value exceeds the maximum value, and as each router
receives this maximum metric, the network is then considered unreachable .
-
8/14/2019 Distance Vactor Routing Protocol Rip
18/134
-
8/14/2019 Distance Vactor Routing Protocol Rip
19/134Rick Graziani [email protected] 19
Split Horizon
The effect of split horizon is that a router will send out different routingmessages on different interfaces. In effect a router never sends outinformation on an interface that it learned from that interface. (Lewis,Cisco TCP/IP Routing)
-
8/14/2019 Distance Vactor Routing Protocol Rip
20/134Rick Graziani [email protected] 20
Split Horizon
This example from the curriculum is not an example of split hoizon,
but using hold-down timers. Split-horizon attempts to avoid this situation. If a routing update aboutNetwork 1 arrives from Router A, Router B or Router D cannot sendinformation about Network 1 back to Router A. Split-horizon thusreduces incorrect routing information and reduces routing overhead.
Initially, this is true, but the loop is a result of Router C sending out theupdates, because it has not converged.
-
8/14/2019 Distance Vactor Routing Protocol Rip
21/134Rick Graziani [email protected] 21
Split Horizon Rule Avoiding Routing Loops Routers RTA and RTB have their initial routing tables and are ready to
exchange routing information via a distance-vector routing protocollike RIP.Split Horizon disabled If split horizon were disabled the routing updates would include all of
the networks in their routing tables including their directly connected
networks and any networks learned from any interface.
RTA RTB10.1.1.0/24
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
10.1.2.0/24 10.1.3.0/24
s0 s0e0 e0
.1 .1.1 .2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e0
Simple Split Horizon
Initialroutingtables
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
-
8/14/2019 Distance Vactor Routing Protocol Rip
22/134Rick Graziani [email protected] 22
Split Horizon Disabled After the initial exchange of updates everything in the routing tableslook fine.
Because split horizon disabled, the 10.1.2.0/24 network is sent by bothrouters, but neither router includes the others route to 10.1.2.0/24 (1hop) in the routing table, because it has a current route with a better metric of 0.
Initialroutingtables
Newroutingtables
10.1.2.0/24network isincluded becausesplit horizon hasbeen disabled
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
s0 s0e0 e0
.1 .1.1 .2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e0
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.110.1.2.0/24 1 10.1.1.1
Routing UpdateNext-hop
Net. Hops Address10.1.2.0/24 1 10.1.2.210.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e010.1.1.0/24 1 10.1.2.1
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
-
8/14/2019 Distance Vactor Routing Protocol Rip
23/134Rick Graziani [email protected] 23
Split Horizon Disabled After the next exchange of updates everything in the routing tables look fine andthe routing tables are converged.
Because split horizon disabled, the besides the 10.1.2.0/24 network, the networkslearned from the other router in the previous update is also sent by both routers.
However, neither router includes the those networks, because it has a currentroute with a better metric of 0.
s0 s0e0 e0
.1 .1.1 .2
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.110.1.2.0/24 1 10.1.1.110.1.3.0/24 2 10.1.1.1
Routing UpdateNext-hop
Net. Hops Address10.1.2.0/24 1 10.1.2.210.1.3.0/24 1 10.1.2.210.1.1.0/24 2 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
10.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e0
10.1.1.0/24 1 10.1.2.1
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e010.1.1.0/24 1 10.1.2.1
Previousroutingtables
Networks in redwere includedbecause splithorizon has beendisabled
Newroutingtables
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
-
8/14/2019 Distance Vactor Routing Protocol Rip
24/134Rick Graziani [email protected] 24
Split Horizon Disabled 10.1.3.0/24 down Note: Routing tables are not sent at the exactly same time. We will
learn about this in Ch. 12 Routing Protocols, that this is done onpurpose to avoid collisions on broadcast networks like Ethernet.
Here, the 10.1.3.0/24 network fails, and before RTB sends out itsrouting update, RTB receives a routing update from RTA.
s0 s0e0 e0
.1 .1.1 .2
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.110.1.2.0/24 1 10.1.1.110.1.3.0/24 2 10.1.1.1
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
10.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e0
10.1.1.0/24 1 10.1.2.1
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 2 10.1.2.110.1.1.0/24 1 10.1.2.1
X
Previousroutingtables
Networks in redwere includedbecause splithorizon has beendisabled
Newroutingtables
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
-
8/14/2019 Distance Vactor Routing Protocol Rip
25/134Rick Graziani [email protected] 25
Split Horizon Disabled 10.1.3.0/24 down RTB notices that it has a route to 10.1.3.0/24 via RTA. Even though it is 2
hops it is certainly better than its current situation of unreachable so it acceptsthis better, but incorrect information from RTA.
RTB now forwards all packets destined for 10.1.3.0/24 to RTA at 10.1.2.1. RTA receives these packets and forwards them to RTB at 10.1.2.2.
RTB forwards them back to RTA at 10.1.2.1. And so on! The packets get blackholed in this routing loop.
s0 s0e0 e0
.1 .1.1 .2
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.110.1.2.0/24 1 10.1.1.110.1.3.0/24 2 10.1.1.1
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
10.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e0
10.1.1.0/24 1 10.1.2.1
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 2 10.1.2.110.1.1.0/24 1 10.1.2.1
X
Previousrouting
tablesNetworks in redwere includedbecause splithorizon has beendisabled
Newroutingtables
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
-
8/14/2019 Distance Vactor Routing Protocol Rip
26/134
Rick Graziani [email protected] 26
Split Horizon Disabled 10.1.3.0/24 down Meanwhile, its RTBs turn to send its routing update. RTB increments the hop count to 10.1.3.0/24 to 3 hops and sends it to
RTA. When RTA sends out its next routing table it will increment the hop
count to 10.1.3.0/24 to 4 hops and sends it to RTB. And on and on, until infinity which in RIP is 16 hops.
Previousrouting
tablesNetworks in redwere includedbecause splithorizon has beendisabled
Newroutingtables
s0 s0e0 e0
.1 .1.1 .2
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 3 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 2 10.1.2.110.1.1.0/24 1 10.1.2.1
X
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
10.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 2 10.1.2.1
10.1.1.0/24 1 10.1.2.1
Routing UpdateNext-hop
Net. Hops Address10.1.2.0/24 1 10.1.2.210.1.3.0/24 3 10.1.2.210.1.1.0/24 2 10.1.2.2
-
8/14/2019 Distance Vactor Routing Protocol Rip
27/134
Rick Graziani [email protected] 27
Split Horizon Disabled Once both routers have 16 hops for 10.1.3.0/24, they will both mark
this network as unreachable and discontinue forwarding, drop,
packets to this network. This temporary routing loop can be easily avoided by enabling splithorizon on the serial 0 interfaces.
Split horizon rule states that router never sends out information on aninterface that it learned from that interface
Lets see!
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
s0 s0e0 e0
.1 .1.1 .2
XRouting Table
Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 16 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 16 10.1.2.110.1.1.0/24 1 10.1.2.1
Simple Split Horizon
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/241 11 2
-
8/14/2019 Distance Vactor Routing Protocol Rip
28/134
Rick Graziani [email protected] 28
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
s0 s0e0 e0
.1 .1.1 .2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e0
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.1
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e010.1.1.0/24 1 10.1.2.1
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.1
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 1 10.1.2.2
Previousrouting
tables
Newroutingtables
SplitHorizonEnabled
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/241 11 2
-
8/14/2019 Distance Vactor Routing Protocol Rip
29/134
Rick Graziani [email protected] 29
Split Horizon Enabled As you can see, with split horizon enabled, RTA does not send RTB ( out s0 )
information about 10.1.3.0/24 because it learned it from RTB ( same s0 ), andRTB does not send RTA ( out s0 ) information about 10.1.1.0/24 to RTAbecause it learned it from RTA ( same s0 ). (This also includes the commonnetwork between them.
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s0
s0 s0e0 e0
.1 .1.1 .2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e0
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.1
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 1 10.1.2.2
Routing Table
Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table
Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e010.1.1.0/24 1 10.1.2.1
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.1
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 1 10.1.2.2
Previousrouting
tables
Newroutingtables
RTA10 1 1 0/24 10 1 2 0/24 10 1 3 0/24
-
8/14/2019 Distance Vactor Routing Protocol Rip
30/134
Rick Graziani [email protected] 30
Split Horizon Enabled 10.1.3.0/24 down RTB notices 10.1.3.0/24 is down and puts this route into hold-down state in
its routing table. (hold-down coming next) RTB immediately sends out a triggered update for only this route (if there were
others in the routing table) with a metric of infinity, 16. RTA receives the triggered update and puts the route for 10.1.3.0/24 into
hold-down state.
Previous
routingtables
Newroutingtables
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
s0 s0e0 e0
.1 .1.1 .2
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e0
10.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s0
10.1.3.0/24 (down) e010.1.1.0/24 1 10.1.2.1
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 (down) 10.1.2.2
X
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 16 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 (down) e010.1.1.0/24 1 10.1.2.1
RTA10 1 1 0/24 10 1 2 0/24 10 1 3 0/24
-
8/14/2019 Distance Vactor Routing Protocol Rip
31/134
Rick Graziani [email protected] 31
Split Horizon Enabled 10.1.3.0/24 down Notice that RTA never sends RTB a routing update for 10.1.3.0/24,
because split horizon is enabled on these interfaces.
Previous
routingtables
Newroutingtables
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
s0 s0e0 e0
.1 .1.1 .2
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e0
10.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s0
10.1.3.0/24 (down) e010.1.1.0/24 1 10.1.2.1
Routing Table Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 (down) 10.1.2.2
X
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 16 10.1.2.2
Routing Table Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 (down) e010.1.1.0/24 1 10.1.2.1
S lit H i ith P i R
-
8/14/2019 Distance Vactor Routing Protocol Rip
32/134
Rick Graziani [email protected] 32
Split Horizon with Poison Reverse Many vendor implementations of distance vector routing protocols like Ciscos RIP and
IGRP apply a special kind of split horizon, called split horizon with poison reverse .
Split horizon with poison reverse means that, instead of not advertising routes to thesource, routes are advertised back to the source with a metric of 16, which will make thesource router ignore the route. It is perceived that explicitly telling a router to ignore aroute is better than not telling it about the route in the first place. (Lewis, Cisco TCP/IPRouting)
One drawback is that routing update packet sizes will be increased when using PoisonReverse, since they now include these routes.
Split Horizon with Poison ReverseRTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
s0 s0e0 e0
.1 .1.1 .2
Routing Table
Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table
Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e010.1.1.0/24 1 10.1.2.1
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.110.1.2.0/24 16 10.1.2.110.1.3.0/24 16 10.1.2.1
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 1 10.1.2.210.1.2.0/24 16 10.1.2.210.1.1.0/24 16 10.1.2.2
Poisonedroutes in red.
Routing tablesremain thesame.
S lit H i ith P i R
-
8/14/2019 Distance Vactor Routing Protocol Rip
33/134
Rick Graziani [email protected] 33
Split Horizon Enabled by DefaultSplit horizon with poison reverse is enabled by default for all interfaces except : Physical interfaces or multipoint sub-interfaces using Frame Relay or SMDS
encapsulation (CCNA Semester 4 and CCNP)
To disable split horizon on an interface:Router(config-if)# no ip split-horizon
To enable split horizon on an interface:
Router(config-if)# ip split-horizon
RTA RTB10.1.1.0/24 10.1.2.0/24 10.1.3.0/24
s0 s0e0 e0
.1 .1.1 .2
Routing Table
Net. Hops Ex-Int10.1.1.0/24 0 e010.1.2.0/24 0 s010.1.3.0/24 1 10.1.2.2
Routing Table
Net. Hops Ex-Int10.1.2.0/24 0 s010.1.3.0/24 0 e010.1.1.0/24 1 10.1.2.1
Routing UpdateNext-hop
Net. Hops Address10.1.1.0/24 1 10.1.1.110.1.2.0/24 16 10.1.2.110.1.3.0/24 16 10.1.2.1
Routing UpdateNext-hop
Net. Hops Address10.1.3.0/24 1 10.1.2.210.1.2.0/24 16 10.1.2.210.1.1.0/24 16 10.1.2.2
Poisonedroutes in red.
Split Horizon with Poison Reverse
-
8/14/2019 Distance Vactor Routing Protocol Rip
34/134
Rick Graziani [email protected] 34
Route poisoning
When route poisoning is used with triggered updates it will speed upconvergence time because neighboring routers do not have to wait 30seconds before advertising the poisoned route.
Preventing routing loops with holddown
-
8/14/2019 Distance Vactor Routing Protocol Rip
35/134
Rick Graziani [email protected] 35
Preventing routing loops with holddowntimers
The main function of holddown timers is to prevent the distance vector routing protocol from establishing routing loops during periods of networktransition (topology changes).
The rule: Once a route is marked unreachable , it must stay in this state for aperiod of time assumed sufficient for all routers to receive new informationabout the unreachable network. In essence, we instruct the routers to let therumors calm down and then to pick up the truth. (Zinin, Cisco IP Routing)
The amount of time a router remains in this state is determined by theholddown timer .
Preventing routing loops with holddown
-
8/14/2019 Distance Vactor Routing Protocol Rip
36/134
Rick Graziani [email protected] 36
Preventing routing loops with holddowntimers
Curriculum A count to infinity problem can be avoided by using holddown timers.
When a router receives an update from a neighbor indicating that apreviously accessible network is now inaccessible, the router marksthe route as inaccessible and starts a hold-down timer.
Preventing routing loops with holddown
-
8/14/2019 Distance Vactor Routing Protocol Rip
37/134
Rick Graziani [email protected] 37
Preventing routing loops with holddowntimers
Same Route from same neighbor: Network is back up (Correct News)
If at any time before the hold-down timer expires an update is receivedfrom the same neighbor indicating that the network is again accessible,the router marks the network as accessible and removes the hold-down timer.
Preventing routing loops with holddown
-
8/14/2019 Distance Vactor Routing Protocol Rip
38/134
Rick Graziani [email protected] 38
Preventing routing loops with holddowntimers
Better Route from different neighbor (Correct News)
If at any time before the hold-down timer expires an update arrivesfrom a different neighboring router with a better metric than originallyrecorded for the network, the router marks the network as accessibleand removes the hold-down timer.
Preventing routing loops with holddown
-
8/14/2019 Distance Vactor Routing Protocol Rip
39/134
Rick Graziani [email protected] 39
Preventing routing loops with holddowntimers
Poorer Route from a different neighbor. (Incorrect News)
If at any time before the hold-down timer expires an update arrives from adifferent neighboring router with a poorer metric than originally recorded for thenetwork the update is ignored and the hold-down timer continues.
Ignoring an update with a poorer metric when a hold-down is in effect allowsmore time for the knowledge of a disruptive change to propagate through theentire network.
Preventing routing loops with holddown
-
8/14/2019 Distance Vactor Routing Protocol Rip
40/134
Rick Graziani [email protected] 40
Preventing routing loops with holddowntimers
Additional Information on Holddown TimersFlapping routes Holddown timers not only help prevent routing loops during transient periods
but also help network stability by dampening unstable, flapping routes (routeswhich continuously go up and down).
Holddown Time As we will see with both RIP and IGRP, the amount of time the router remains
in the holddown state can be modified (with caution!), even set to 0. We will look at this later in the presentations on RIP and IGRP.
Preventing routing loops with holddown
-
8/14/2019 Distance Vactor Routing Protocol Rip
41/134
Rick Graziani [email protected] 41
Preventing routing loops with holddowntimers
Additional Information on Holddown TimersPacket forwarding Even though routing tables remain constant and routers do not accept
potentially bad updates, an interesting question is whether or not routersshould continue use the existing routes that are in holddown state for forwarding packets?
In practice, routes in the holddown state are used for packet forwarding. In theworst case, packets are forwarded toward the router that was previouslyconnected to the destination network, which drops them. In the best case, theyare forwarded along a potentially suboptimal but valid path. (Zinin, Cisco IPRouting)
Avoiding routing loops with triggered
-
8/14/2019 Distance Vactor Routing Protocol Rip
42/134
Rick Graziani [email protected] 42
Avoiding routing loops with triggeredupdates
Triggered update is sent immediately in response to some change inthe routing table.
The router that detects a topology change immediately sends anupdate message to adjacent routers that, in turn, generate triggeredupdates notifying their adjacent neighbors of the change.
When a route fails, an update is sent immediately rather than waiting onthe update timer to expire.
Triggered updates, used in conjunction with route poisoning, ensure
that all routers know of failed routes before any holddown timers canexpire.
-
8/14/2019 Distance Vactor Routing Protocol Rip
43/134
Rick Graziani [email protected] 43
Lets look at a related item in IP, the TTL field. Takenfrom information added to Ch. 9 TCP/IP.
IP Header
0 15 16 314-bit
Version4-bit
Header Length
8-bit Type Of Service(TOS)
16-bit Total Length (in bytes)
16-bit Identification3-bitFlags 13-bit Fragment Offset
8 bit Time To Live
TTL
8-bit Protocol 16-bit Header Checksum
32-bit Source IP Address
32-bit Destination IP Address
Options (if any)
Data
IPs TTL Time To Live field
-
8/14/2019 Distance Vactor Routing Protocol Rip
44/134
Rick Graziani [email protected] 44
When a packet is first generated a value is entered into the TTL field. Originally, the TTL field was the number of seconds, but this was difficult to implement
and rarely supported.
Now, the TTL is now set to a specific value which is then decremented by each router.
IP Header
0 15 16 314-bit
Version4-bit
Header Length
8-bit Type Of Service(TOS)
16-bit Total Length (in bytes)
16-bit Identification3-bitFlags 13-bit Fragment Offset
8 bit Time To Live
TTL
8-bit Protocol 16-bit Header Checksum
32-bit Source IP Address
32-bit Destination IP Address
Options (if any)
Data
IPs TTL Time To Live field
f ld
-
8/14/2019 Distance Vactor Routing Protocol Rip
45/134
Rick Graziani [email protected] 45
Decrement by 1, if 0 drop thepacket.
IP Header
0 15 16 314-bit
Version4-bit
Header Length
8-bit Type Of Service(TOS)
16-bit Total Length (in bytes)
16-bit Identification3-bitFlags 13-bit Fragment Offset
8 bit Time To LiveTTL
8-bit Protocol 16-bit Header Checksum
32-bit Source IP Address
32-bit Destination IP Address
Options (if any)
Data
IPs TTL Time To Live field
If the router decrements the TTL field to 0, it will then drop the packet (unless the packetis destined specifically for the router, I.e. ping, telnet, etc.). Common operating system TTL values are:
UNIX: 255 Linux: 64 or 255 depending upon vendor and version Microsoft Windows 95: 32
Other Microsoft Windows operating systems: 128
http://www.switch.ch/docs/ttl_default.html
-
8/14/2019 Distance Vactor Routing Protocol Rip
46/134
Rick Graziani [email protected] 46
pTTL Overview - Disclaimer:The following list is a best effort overview of some widely used TCP/IP stacks. The
information was provided by vendors and many helpful system administrators. We would liketo thank all these contributors for their precious help ! SWITCH cannot, however, takeany responsibility that the provided information is correct. Furthermore, SWITCH cannot
be made liable for any damage that may arise by the use of this information.
+--------------------+-------+---------+---------+| OS Version |"safe" | tcp_ttl | udp_ttl |+--------------------+-------+---------+---------+
AIX n 60 30DEC Pathworks V5 n 30 30FreeBSD 2.1R y 64 64HP/UX 9.0x n 30 30HP/UX 10.01 y 64 64Irix 5.3 y 60 60Irix 6.x y 60 60Linux y 64 64MacOS/MacTCP 2.0.x y 60 60OS/2 TCP/IP 3.0 y 64 64OSF/1 V3.2A n 60 30Solaris 2.x y 255 255SunOS 4.1.3/4.1.4 y 60 60Ultrix V4.1/V4.2A n 60 30VMS/Multinet y 64 64VMS/TCPware y 60 64VMS/Wollongong 1.1.1.1 n 128 30VMS/UCX (latest rel.) y 128 128MS WfW n 32 32MS Windows 95 n 32 32MS Windows NT 3.51 n 32 32MS Windows NT 4.0 y 128 128
Assigned Numbers (RFC1700, J. Reynolds, J.Postel, October 1994):
IP TIME TO LIVEPARAMETER
The currentrecommended defaulttime to live (TTL)for the Internet
Protocol (IP) is 64.
Safe: TCP and UDPinitial TTL valuesshould be set to a"safe" value of atleast 60 today.
IP TTL Ti T Li fi ld
-
8/14/2019 Distance Vactor Routing Protocol Rip
47/134
Rick Graziani [email protected] 47
The idea behind the TTL field is that IP packets can not travel around theInternet forever, from router to router.
Eventually, the packets TTL which reach 0 and be dropped by the router, evenif there is a routing loop somewhere in the network.
Decrement by 1, if 0 drop thepacket.
IP Header
0 15 16 314-bit
Version4-bit
Header Length
8-bit Type Of Service(TOS)
16-bit Total Length (in bytes)
16-bit Identification3-bitFlags 13-bit Fragment Offset
8 bit Time To LiveTTL
8-bit Protocol 16-bit Header Checksum
32-bit Source IP Address
32-bit Destination IP Address
Options (if any)
Data
IPs TTL Time To Live field
i
-
8/14/2019 Distance Vactor Routing Protocol Rip
48/134
Rick Graziani [email protected] 48
RIP routing process
Request for Comments (RFC) 1058 RIP has evolved over the years from a Classful Routing Protocol, RIP
Version 1 (RIP v1), to a Classless Routing Protocol, RIP Version 2(RIP v2). RIP v2 enhancements include: Ability to carry additional packet routing information. Authentication mechanism to secure table updates. Supports variable length subnet masking (VLSM).
C fi i RIP
-
8/14/2019 Distance Vactor Routing Protocol Rip
49/134
Rick Graziani [email protected] 49
Configuring RIP
C fi i RIP
-
8/14/2019 Distance Vactor Routing Protocol Rip
50/134
Rick Graziani [email protected] 50
Configuring RIP
RIP and IGRP: Classful network statements only IOS will take subnetted networks but will translate it into
the classful network for the running-config.
-
8/14/2019 Distance Vactor Routing Protocol Rip
51/134
T i d E i
-
8/14/2019 Distance Vactor Routing Protocol Rip
52/134
Rick Graziani [email protected] 52
Triggered Extensions
No, this command refers to triggered extensions, not triggered updates! Triggered updates are already enabled in Cisco RIP.
A router running RIP can be configured to send a triggered updatewhen the network topology changes using the ip rip triggered command. This command is issued only on serial interfaces at therouter(config-if)# prompt. After updating its routing table due toa configuration change, the router immediately begins transmittingrouting updates in order to inform other network routers of the change.These updates, called triggered updates, are sent independently of theregularly scheduled updates that RIP routers forward.
-
8/14/2019 Distance Vactor Routing Protocol Rip
53/134
T i d E t i
-
8/14/2019 Distance Vactor Routing Protocol Rip
54/134
Rick Graziani [email protected] 54
Triggered Extensions
RFC 2091, Triggered Extensions to RIP to Support Demand Circuits. When triggered extensions to RIP are enabled, routing updates are transmittedon the WAN only if one of the following occurs: The router receives a specific request for a routing update. (Full database is
sent.) Information from another interface modifies the routing database. (Only
latest changes are sent) The interface comes up or goes down. (Partial database is sent.) The router is first powered on, to ensure that at least one update is sent.
(Full database is sent.) You might want to enable this feature if you are using an on-demand circuit and
you are charged for usage time. Fewer routing updates will incur lower usagecosts.
interface serial 0ip rip triggered
Th RIP 1 P t l
-
8/14/2019 Distance Vactor Routing Protocol Rip
55/134
Rick Graziani [email protected] 55
RIP MessageData Link Frame MAC Source Address
MAC Destination Address = Broadcast IP Packet IP Source Address IP Destination Address = Broadcast: 255.255.255.255 Protocol field = 17 for UDP
UDP Segment Source Port number field = 520 for RIP Message RIP Message (Data portion of IP Packet): Routes: Network IP Address Hops (metric)
Data Link
FrameHeader
IP Packet
Header
UDP
SegmentHeader
RIP
Message
The RIPv1 Protocol
Data Link IP Packet UDP RIP
-
8/14/2019 Distance Vactor Routing Protocol Rip
56/134
Rick Graziani [email protected] 56
Command : 1 signifying a Request or 2 signifying a Reply Version : 1 for RIP v 1 or 2 for RIP v 2
Address Family Identifier : 2 signifying IP (only exception is for a Request for the Routers full routingtable, later Semester in RIP v 2)
IP Address : The address of the destination route, which may be a network address, a subnetaddress of a host address.
Metric : Hop count between 1 and 16. Note : With RIP the sending router increases the metric beforesending out the RIP message.
Note: The routing table knows the next-hop-ip-address (via) from the source IP address of the packet.
FrameHeader
Header SegmentHeader
Message
0 7 8 15 16 23 24 31Command = 1 or 2 Version = 1 Must be zero
Address family identifier (2 = IP) Must be zeroIP Address (Network Address)
Must be zeroMust be zero
Metric (Hops)
Multiple Routes, up to a maximum of 25
Address family identifier (2 = IP) Must be zeroIP Address (Network Address)
Must be zeroMust be zero
Metric (Hops)
-
8/14/2019 Distance Vactor Routing Protocol Rip
57/134
RIP v2 message format
-
8/14/2019 Distance Vactor Routing Protocol Rip
58/134
Rick Graziani [email protected] 58
RIP v2 message format
The Route Tag field provides a way to differentiate between internal andexternal routes.
External routes are those that have been redistributed into the RIP v2. The Next Hop field contains the IP address of the next hop listed in the IP
Address field. Metric indicates how many internetwork hops, between 1 and 15 for a valid
route, or 16 for an unreachable route.
Configuring RIP
-
8/14/2019 Distance Vactor Routing Protocol Rip
59/134
Rick Graziani [email protected] 59
Configuring RIP
RIP must be enabled and the networks specified. The remaining tasks are
optional. Among these optional tasks are: Applying offsets to routing metrics (Not commonly used) Adjusting timers Specifying a RIP version (RIPv1 or RIPv2) Enabling RIP authentication Configuring route summarization on an interface Verifying IP route summarization Disabling automatic route summarization (RIPv2) Running IGRP and RIP concurrently (Usually, redistributing, not concurrently.) Disabling the validation of source IP addresses Enabling or disabling split horizon Connecting RIP to a WAN
ip classless command
-
8/14/2019 Distance Vactor Routing Protocol Rip
60/134
Rick Graziani [email protected]
ip classless command
IP classless only affects the operation of the forwarding processes inIOS. IP classless does not affect the way the routing table is built. This command concerns classless and classful routing behavior,
which is not the same as classless and classful routing protocols(later).
To discuss this command, we will use information which is not in thecurriculum.
For more information: The Routing Table: Part 1 or 2 - The Routing Table Structure(PDF)
The Routing Table: Part 2 or 2 - The Routing Table Lookup Proces (PDF)
http://www.cabrillo.cc.ca.us/ciscoacad/curriculum/graziani/presentations/semester5/PartI-RoutingTableStructure.pdfhttp://www.cabrillo.cc.ca.us/ciscoacad/curriculum/graziani/presentations/semester5/PartII-RoutingTableLookup.pdfhttp://www.cabrillo.cc.ca.us/ciscoacad/curriculum/graziani/presentations/semester5/PartII-RoutingTableLookup.pdfhttp://www.cabrillo.cc.ca.us/ciscoacad/curriculum/graziani/presentations/semester5/PartI-RoutingTableStructure.pdf -
8/14/2019 Distance Vactor Routing Protocol Rip
61/134
Lookup what?
-
8/14/2019 Distance Vactor Routing Protocol Rip
62/134
Rick Graziani [email protected]
Lookup what?
RouterB#show ip route
172.16.0.0/24 is subnetted, 3 subnetsR 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20, Serial0C 172.16.2.0 is directly connected, Serial0C 172.16.3.0 is directly connected, FastEthernet0C 192.168.1.0/24 is directly connected, Serial1S 172.0.0.0/8 is directly connected, Serial1S 160.0.0.0/4 is directly connected, Serial1S* 0.0.0.0/0 is directly connected, Serial1
Routing Table process matches: The routing table process compares the left-most bits in the packets
destination IP address with the left-most bits in the route in the routing table,looking for a longest-bit-match.
The subnet mask of the route in the routing table specifies the minimumnumber of left-most bits that must match.
Before checking child routes, the classful mask of the parent route is used. For child routes the parent routes mask is used. For VLSM routes, the mask is contained with the child route.
-
8/14/2019 Distance Vactor Routing Protocol Rip
63/134
Parent and Child Routes
-
8/14/2019 Distance Vactor Routing Protocol Rip
64/134
Rick Graziani [email protected]
Parent and Child Routes
RouterB#show ip route
172.16.0.0 /24 is subnetted, 3 subnetsR 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20, Serial0C 172.16.2.0 is directly connected, Serial0C 172.16.3.0 is directly connected, FastEthernet0C 192.168.1.0/24 is directly connected, Serial1S 172.0.0.0/8 is directly connected, Serial1S 160.0.0.0/4 is directly connected, Serial1S* 0.0.0.0/0 is directly connected, Serial1
DA = 172.16.2.1 16 bits of 172.16.0.0 do match, so child routes are checked.
24 bits of 172.16.1.0 do not match, so continue to next child route. 24 bits of 172.16.2.0 do match, so this route is used!
Parent and Child Routes
-
8/14/2019 Distance Vactor Routing Protocol Rip
65/134
Rick Graziani [email protected]
Parent and Child Routes
RouterB#show ip route
172.16.0.0/24 is subnetted, 3 subnetsR 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20, Serial0C 172.16.2.0 is directly connected, Serial0C 172.16.3.0 is directly connected, FastEthernet0C 192.168.1.0/24 is directly connected, Serial1S 172.0.0.0/8 is directly connected, Serial1S 160.0.0.0/4 is directly connected, Serial1S* 0.0.0.0/0 is directly connected, Serial1
DA = 32.1.1.10 16 bits of 172.16.0.0 do not match, so child routes are not checked.
24 bits of 192.168.1.0/24 do not match, so this route is not used. 8 bits of 172.0.0.0/8 do not match, so this route is not used. 4 bits of 160.0.0.0/4 do not match, so this route is not used. 0 bits of 0.0.0.0/0 does match, so this route is used!
Parent and Child Routes
-
8/14/2019 Distance Vactor Routing Protocol Rip
66/134
Rick Graziani [email protected]
Parent and Child Routes
RouterB#show ip route
172.16.0.0/24 is subnetted, 3 subnetsR 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20, Serial0C 172.16.2.0 is directly connected, Serial0C 172.16.3.0 is directly connected, FastEthernet0C 192.168.1.0/24 is directly connected, Serial1S 172.0.0.0/8 is directly connected, Serial1S 160.0.0.0/4 is directly connected, Serial1S* 0.0.0.0/0 is directly connected, Serial1
DA = 172.16.4.1 16 bits of 172.16.0.0 do match, so child routes are checked.
24 bits of 172.16.1.0 do not match, so continue to next child route. 24 bits of 172.16.2.0 do not match, so continue to next child route. 24 bits of 172.16.3.0 do not match, no more child routes.
Now what??? It depends!
Classful Routing Behavior
-
8/14/2019 Distance Vactor Routing Protocol Rip
67/134
Rick Graziani [email protected]
Classful Routing Behavior
RouterB#show ip route
172.16.0.0/24 is subnetted, 3 subnetsR 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20, Serial0C 172.16.2.0 is directly connected, Serial0C 172.16.3.0 is directly connected, FastEthernet0C 192.168.1.0/24 is directly connected, Serial1S 172.0.0.0/8 is directly connected, Serial1S 160.0.0.0/4 is directly connected, Serial1S* 0.0.0.0/0 is directly connected, Serial1
DA = 172.16.4.1
Router(config)# no ip classless
With classful routing behavior , if the child routes are checked butthere are no matches, the routing lookup process ends and the Packetis dropped . (The packets get in, but they cant get out!)
Supernet and default routes are not checked. Default with IOS 11.2 and prior
Classless Routing Behavior
-
8/14/2019 Distance Vactor Routing Protocol Rip
68/134
Rick Graziani [email protected]
Classless Routing Behavior
RouterB#show ip route
172.16.0.0/24 is subnetted, 3 subnetsR 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20, Serial0C 172.16.2.0 is directly connected, Serial0C 172.16.3.0 is directly connected, FastEthernet0C 192.168.1.0/24 is directly connected, Serial1S 172.0.0.0/8 is directly connected, Serial1S 160.0.0.0/4 is directly connected, Serial1S* 0.0.0.0/0 is directly connected, Serial1
DA = 172.16.4.1
Router(config)# ip classless
With classless routing behavior , if the child routes are checked butthere are no matches, the routing lookup process continues with other routes in the routing table, including supernet and default routes.
8 bits of 172.0.0.0/8 do match, so this route is used! Default with IOS 11.3 and later
Common RIP Configuration Issues
-
8/14/2019 Distance Vactor Routing Protocol Rip
69/134
Rick Graziani [email protected] 69
Common RIP Configuration Issues
Split Horizon
The following command is used to disable split horizon :GAD(config-if)# no ip split-horizon
The following command is used to enable (default) split horizon :
GAD(config-if)# ip split-horizon
Common RIP Configuration Issues
-
8/14/2019 Distance Vactor Routing Protocol Rip
70/134
Rick Graziani [email protected] 70
Common RIP Configuration Issues
Holddown Timer
The ideal setting would be to set the timer just longer that the longestpossible update time for the internetwork.
To change the holddown timer:Router(config-router)# timers basic update invalid holddown flush [sleeptime]
Common RIP Configuration Issues
-
8/14/2019 Distance Vactor Routing Protocol Rip
71/134
Rick Graziani [email protected] 71
Common RIP Configuration Issues
Update Timer
The default RIP update interval in Cisco IOS is 30 seconds. This canbe configured for longer intervals to conserve bandwidth, or for shorter intervals to decrease convergence time.
To change the update internal:GAD(config-router)# update-timer seconds
Common RIP Configuration Issues
-
8/14/2019 Distance Vactor Routing Protocol Rip
72/134
Rick Graziani [email protected] 72
Common RIP Configuration Issues
For RIP and IGRP, the passive interface command stops the router fromsending updates to a particular neighbor, but the router continues tolisten and use routing updates from that neighbor. (More later.)
Also used when there are no routers on that interface, such as stubLANs.
Router(config-router)# passive-interface interface
router rippassive-interface fastethernet 0/0
Common RIP Configuration Issues
-
8/14/2019 Distance Vactor Routing Protocol Rip
73/134
Rick Graziani [email protected] 73
Common RIP Configuration Issues
Because RIP is a broadcast protocol, the network administrator mayhave to configure RIP to exchange routing information in a non-broadcast network such as Frame Relay.
In this type of network, RIP needs to be told of other neighboring RIProuters.
To do this use the router rip command:
Router(config-router)# neighbor ip address
Common RIP Configuration Issues
-
8/14/2019 Distance Vactor Routing Protocol Rip
74/134
Rick Graziani [email protected] 74
Common RIP Configuration Issues
By default, the Cisco IOS software receives RIP Version 1 and Version
2 packets, but sends only Version 1 packets. The network administrator can configure the router to only receive and
send Version 1 packets or the administrator can configure the router tosend only Version 2 packets.
Compatibility with RIP v1
-
8/14/2019 Distance Vactor Routing Protocol Rip
75/134
Rick Graziani [email protected] 75
Compatibility with RIP v1
NewYork
interface fastethernet0/0ip address 192.168.50.129 255.255.255.192ip rip send version 1ip rip receive version 1
interface fastethernet0/1
ip address 172.25.150.193 255.255.255.240 ip rip send version 1 2
interface fastethernet0/2ip address 172.25.150.225 225.255.255.240
router rip version 2 network 172.25.0.0 network 192.168.50.0
Interface FastEthernet0/0 isconfigured to send and receiveRIP v1 updates.
FastEthernet0/1 is configuredto send both version 1 and 2updates.
FastEthernet0/2 has no specialconfiguration and thereforesends and receives version 2by default.
RIPv2
Verifying RIP configuration
-
8/14/2019 Distance Vactor Routing Protocol Rip
76/134
Rick Graziani [email protected] 76
Verifying RIP configuration
Verifying RIP configuration
-
8/14/2019 Distance Vactor Routing Protocol Rip
77/134
Rick Graziani [email protected] 77
Ve y g co gu at o
Also: show running-config
Troubleshooting RIP update issues
-
8/14/2019 Distance Vactor Routing Protocol Rip
78/134
Rick Graziani [email protected] 78
g p
-
8/14/2019 Distance Vactor Routing Protocol Rip
79/134
Load balancing with RIP
-
8/14/2019 Distance Vactor Routing Protocol Rip
80/134
Rick Graziani [email protected] 80
g
RIP is capable of load balancing over as many as six equal-cost paths,with four paths being default. RIP performs what is referred to asround robin load balancing.
This means that RIP takes turns forwarding packets over the parallelpaths.
This is only part of the story
Fast Switching and Process Switching
-
8/14/2019 Distance Vactor Routing Protocol Rip
81/134
Rick Graziani [email protected] 81
g g
The following information is taken from Routing TCP/IP Volume I by Jeff Doyle.
Load sharing or Load balancing allows routers to take advantage of multiple paths to the same destination.
Equal-cost load balancing: Distributes packets equally among multiple paths with equal
metrics RIP, IGRP, EIGRP, OSPF, IS-IS and BGP
Unequal-cost load balancing: Distributes packets among multiple paths with different metrics,
inversely proportional to the cost of the routes. EIGRP
Load sharing can be either: Per Destination (Fast Switching) Per Packet ( Process Switching)
Fast SwitchingP D ti ti L d B l i
-
8/14/2019 Distance Vactor Routing Protocol Rip
82/134
Rick Graziani [email protected] 82
Per Destination Load Balancing
The default for most interfaces is Fast Switching. Load balancing is distributed according to the destination IP address. Given two paths to the same network, all packets for one destination IP
address will travel over the first path, all packets for a second destination willtravel over the second path, all packets for the third destination will again travelover the first path, and so on.
To enable fast switching:Router(config-if)# ip route-cache
To enable distributed or process switching:Router(config-if)# no ip route-cache
ping 10.0.0.1 ping 10.0.0.2
Router(config-if)# ip route-cache
Fast SwitchingP D ti ti L d B l i g
-
8/14/2019 Distance Vactor Routing Protocol Rip
83/134
Rick Graziani [email protected] 83
Per Destination Load Balancing
Fast Switching2. Router switches first packet to a particular destination, a routing table lookup
is performed and an exit interface is selected.3. The necessary data-link information to frame the packet for the selected
interface is retrieved including any ARP cache information.4. The route and data-link information is stored in fast switching cache.5. The router uses the cache to look up subsequent packets.6. All other packets to the same destination are immediately switched out the
same interface without the router performing another routing table lookup,
including any recursive lookups. (Also no ARP cache lookup).
ping 10.0.0.1 ping 10.0.0.2
Router(config-if)# ip route-cache
Process SwitchingP P k t L d B l i g
-
8/14/2019 Distance Vactor Routing Protocol Rip
84/134
Rick Graziani [email protected] 84
Per Packet Load Balancing
ping 10.0.0.1 ping 10.0.0.2
Router(config-if)# no ip route-cache
Process Switching Given equal cost paths, per packet load sharing means that one packet to a
destination is sent over one link, the next packet to the same destination issent over the next link, and so on.
If the paths are unequal cost, the load balancing may be one packet over thehigher-cost link for every three packets over the lower-cost link, or similar ratio.
With process switching, for every packet, the router performs a route tablelookup and selects an interface, and looks up the data-link information.
To enable distributed or process switching:Router(config-if)# no ip route-cache
Which one?
-
8/14/2019 Distance Vactor Routing Protocol Rip
85/134
Rick Graziani [email protected] 85
ping 10.0.0.1 ping 10.0.0.2
Router(config-if)# no ip route-cache
Fast Switching or Process Switching Process switching (per packet load balancing) has a price, load
balancing may be distributed more evenly but the lower switching timeand processor utilization of fast switching are lost.
ping 10.0.0.1 ping 10.0.0.2
Router(config-if)# ip route-cache
Fast Switching Process Switching
Using debug ip packet withFast Switching and Process Switching
-
8/14/2019 Distance Vactor Routing Protocol Rip
86/134
Rick Graziani [email protected] 86
Fast Switching and Process Switching
debug ip packet can be used to observe packets sentand received and the interfaces that are involved.
IMPORTANT: The debug ip packet command allowsonly process switched packets to be observed. Fast switchpackets are not displayed (except for the first packet in theflow).
Router# debug ip packetIP: s=192.168.3.2 (FastEthernet0), d=10.0.0.1 ( Serial0/0 ),
g=192.168.1.2 , forward IP: s=192.168.3.2 (FastEthernet0), d=10.0.0.1 ( Serial0/1 ),
g=192.168.2.2 , forward IP: s=192.168.3.2 (FastEthernet0), d=10.0.0.1 ( Serial0/0 ),
g=192.168.1.2 , forward IP: s=192.168.3.2 (FastEthernet0), d=10.0.0.1 ( Serial0/1 ),
g=192.168.2.2 , forward
Load balancing across multiple paths
-
8/14/2019 Distance Vactor Routing Protocol Rip
87/134
Rick Graziani [email protected] 87
Note: The example used in this section of the online curriculum isreally for IGRP/EIGRP and does not fit well in this section of RIP.
By default, most IP routing protocols install a maximum of four parallelroutes in a routing table.
Static routes always install six routes. The exception is BGP, which by default allows only one path to a
destination. The range of maximum paths is one to six paths. To change themaximum number of parallel paths allowed, use the followingcommand in router configuration mode:
Router(config-router)# maximum-paths [ number ]
RIP and Administrative Distance
-
8/14/2019 Distance Vactor Routing Protocol Rip
88/134
Rick Graziani [email protected] 88
RIP and Floating Static Routes
-
8/14/2019 Distance Vactor Routing Protocol Rip
89/134
Rick Graziani [email protected] 89
Floating static routes are static routes which are used as backuproutes.
They are only injected into the routing table when a route with a lower administrative distance (dynamic or another static route) goes down.
Should the route with the lower administrative distance come back upthen the floating static route is removed from the routing table.
172.16.0.0/16X
router ripnetwork 192.168.14.0
ip route 172.16.0.0 255.255.0.0 bri0/1 130
Redistribute Static
-
8/14/2019 Distance Vactor Routing Protocol Rip
90/134
Rick Graziani [email protected] 90
Redistributes static routes into the dynamic routing domain.
172.16.0.0/16 will be seen by other RIP routers as adynamic route learned via RIP.
The default metric is 0, so B and D will have a hop count of 1, where C will have a hop count of 2.
RIP
172.16.0.0/16
RouterA ip route 172.16.0.0 255.255.0.0 eth 0Router rip
redistribute staticnetwork .
RIPv1 Labs 3 Scenarios
-
8/14/2019 Distance Vactor Routing Protocol Rip
91/134
Rick Graziani [email protected] 91
Read the following lab. In groups review the configurations and the outputs. Afterwards, we will discuss the this lab together, paying
particular attention to the Reflection sections.
RIPv1 Labs 3 Scenarios
-
8/14/2019 Distance Vactor Routing Protocol Rip
92/134
Rick Graziani [email protected] 92
Objective
In this lab, you will configure RIP routing in three different scenarios. At the end of each scenario, all hosts and all routers should be able to reach(ping) each other.
Scenario
There are five separate classful networks. After configuring RIP, we want to viewthe RIP update messages being sent and received by each router. Scenario 1: Running RIPv1 on classful networks Scenario 2: Running RIPv1 on subnets and between classful networks
Scenario 3: Running RIPv1 on a stub network
These three scenarios can be done in sequence or separately.
RIPv1 Labs 3 Scenarios
-
8/14/2019 Distance Vactor Routing Protocol Rip
93/134
Rick Graziani [email protected] 93
Setup Use the 8 Steps to Success to help you configure the routers. Be sure your cabling is correct, as this causes more troubleshooting issues
than anything else. If the routers have a startup-config already on them, erase it and reboot the
routers. Configure the routers to include hostnames and the proper interface commands
including IP addresses, subnet masks, etc. Each router should be able to ping the interface of the adjacent (neighboring)
router and the host on its LAN (Ethernet) interface. Test and troubleshoot as necessary.
Basic Configurations
There is a Basic Configuration included for each scenario, but it does notinclude clock rate, no shutdown and some other necessary commands.
Note: Even though some of the networks are in numerical order, obviously thisdoes not need to be the case. We only did this to make it easier to remember where the networks originated from.
RIPv1 Labs 3 Scenarios
-
8/14/2019 Distance Vactor Routing Protocol Rip
94/134
Rick Graziani [email protected] 94
Optional: Keeping outputs from interrupting our inputs
Before we begin to configure RIP, lets configure the console 0 port to keep debug and other output messages from interrupting our input. Use the following command on each router to keep the debug out from interfering with you command-line input:
Router(config)# line console 0
Router(config-line)# logging synchronous Optional: Changing the default timeout After 10 minutes, by default, if there is no input via the console, the user will be logged off.
Although a good idea in production environment, in a lab environment this can besomewhat annoying. To turn-off the automatic timeout feature, we use the command:exec-timeout minutes [seconds ], setting both the minutes and seconds to 0.
Router(config)# line console 0Router(config-line)# exec-timeout 0 0
-
8/14/2019 Distance Vactor Routing Protocol Rip
95/134
Scenario 1: Running RIPv1 on classful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
96/134
Rick Graziani [email protected] 96
Objective: Running RIPv1 on classful networks This scenario is the same one we used in the network discovery lab, with the same
configurations and the same outputs. The concepts specific to this scenario will becomemore clear when we view the differences between this scenario and Scenario 2: RunningRIPv1 on subnets and between classful networks.
Step 1 Configuring RIP
First, lets enable RIP on each router.
From global configuration you will enter the command (the default is RIPv1):Router(config)# router rip
Once you are in the Router RIP configuration sub-mode, all you need to do is enter theclassful network address for each directly connected network, using the networkcommand.
Router(config-router)# network directly-connected-classful-network-address
Scenario 1: Running RIPv1 on classful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
97/134
Rick Graziani [email protected] 97
Here are the commands for each router:
SanJose2# configure terminalEnter configuration commands, one per line. End with CNTL/Z.
SanJose2(config)# router ripSanJose2(config-router)# network 192.168.1.0SanJose2(config-router)# network 192.168.2.0
Baypointe# configure terminalEnter configuration commands, one per line. End with CNTL/Z.
Baypointe(config)# router ripBaypointe(config-router)# network 192.168.4.0Baypointe(config-router)# network 192.168.5.0 SanJose1#
configure terminalEnter configuration commands, one per line. End with CNTL/Z.SanJose1(config)# router ripSanJose1(config-router)# network 192.168.2.0SanJose1(config-router)# network 192.168.3.0SanJose1(config-router)# network 192.168.4.0
Step 2 Understanding the network command
-
8/14/2019 Distance Vactor Routing Protocol Rip
98/134
Rick Graziani [email protected] 98
SENDING RIP MESSAGESEach router will begin to send RIP update message out each interface belonging to one of the network
statements.SanJose2(config)# router ripSanJose2(config-router)# network 192.168.1.0SanJose2(config-router)# network 192.168.2.0 For example, SanJose2 to will send out RIP update messages on Ethernet 0 because that interface has an
IP address that belong to the network 192.168.1.0, and on Serial 0 because that interface has an IPaddress that belongs to the network 192.168.2.0.
Just because a router has a directly connected network does not mean it will automatically include thatnetwork in its routing updates to neighboring routers. The network command also tells the RIP toinclude these networks in its updates to adjacent neighbors.
To view the RIP messages being sent and received use the debug ip rip command. SanJose2# debug ip ripRIP protocol debugging is on
SanJose201:03:27: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (192.168.1.1)01:03:27: network 192.168.2.0, metric 101:03:27: RIP: sending v1 update to 255.255.255.255 via Serial0 (192.168.2.1)01:03:27: network 192.168.1.0, metric 1
Scenario 1: Running RIPv1 on classful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
99/134
Rick Graziani [email protected] 99
LISTENING FOR RIP MESSAGESRouters will also listen for RIP messages on each interface belonging to one of the
network statements. For example, SanJose2 to will listen for RIP update messages on Ethernet 0
because that interface has an IP address that belong to the network192.168.1.0, and also listen for RIP update messages on Serial 0 because thatinterface has an IP address that belongs to the network 192.168.2.0.
As RIP messages are received router, will add those networks in the messages totheir routing tables:
If the RIP message contains a network not currently in the routing table.If the RIP message contains a network with a better metric (fewer hops) than an
entry currently in the routing table.
SanJose201:10:56: RIP: received v1 update from 192.168.2.2 on
Serial001:10:56: 192.168.4.0 in 1 hops01:10:56: 192.168.3.0 in 1 hops
Scenario 1: Running RIPv1 on classful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
100/134
Rick Graziani [email protected] 100
Step 3 Viewing the debug ip rip output and the routing tables
Remember that SanJose1 will learn routes to networks from SanJose2. It
will then send that information to Baypointe, telling Baypointe that it isthe next hop to get to those networks, and incrementing the metric (hopcount) by one.
After convergence, each router will continue to send its RIP update
messages out the appropriate interfaces every 30 seconds.
Lets look at the debug messages and the routing table for each router:
SanJose2
01:30:45: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (192.168.1.1)01:30:45: network 192.168.4.0, metric 2
-
8/14/2019 Distance Vactor Routing Protocol Rip
101/134
Rick Graziani [email protected] 101
01:30:45: network 192.168.5.0, metric 301:30:45: network 192.168.2.0, metric 101:30:45: network 192.168.3.0, metric 201:30:45: RIP: sending v1 update to 255.255.255.255 via Serial0 (192.168.2.1)01:30:45: network 192.168.1.0, metric 1SanJose2#01:30:50: RIP: received v1 update from 192.168.2.2 on Serial001:30:50: 192.168.4.0 in 1 hops01:30:50: 192.168.5.0 in 2 hops01:30:50: 192.168.3.0 in 1 hopsSanJose2#
SanJose2#show ip routeCodes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate defaultU - per-user static route, o - ODR
Gateway of last resort is not set
R 192.168.4.0/24 [120/1] via 192.168.2.2, 00:00:10, Serial0R 192.168.5.0/24 [120/2] via 192.168.2.2, 00:00:10, Serial0C 192.168.1.0/24 is directly connected, Ethernet0C 192.168.2.0/24 is directly connected, Serial0R 192.168.3.0/24 [120/1] via 192.168.2.2, 00:00:10, Serial0SanJose2#
SanJose1 01:33:05: RIP: received v1 update from 192.168.4.1 on Serial101:33:05: 192.168.5.0 in 1 hopsSanJose1#
-
8/14/2019 Distance Vactor Routing Protocol Rip
102/134
Rick Graziani [email protected] 102
SanJose1#01:33:07: RIP: received v1 update from 192.168.2.1 on Serial001:33:07: 192.168.1.0 in 1 hops01:33:08: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (192.168.3.1)01:33:08: network 192.168.4.0, metric 101:33:08: network 192.168.5.0, metric 201:33:08: network 192.168.1.0, metric 201:33:08: network 192.168.2.0, metric 101:33:08: RIP: sending v1 update to 255.255.255.255 via Serial0 (192.168.2.2)01:33:08: network 192.168.4.0, metric 101:33:08: network 192.168.5.0, metric 201:33:08: network 192.168.3.0, metric 101:33:08: RIP: sending v1 update to 255.255.255.255 via Serial1 (192.168.4.2)01:33:08: network 192.168.1.0, metric 201:33:08: network 192.168.2.0, metric 101:33:08: network 192.168.3.0, metric 1 SanJose1#show ip routeCodes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
Gateway of last resort is not setC 192.168.4.0/24 is directly connected, Serial1R 192.168.5.0/24 [120/1] via 192.168.4.1, 00:00:12, Serial1R 192.168.1.0/24 [120/1] via 192.168.2.1, 00:00:10, Serial0C 192.168.2.0/24 is directly connected, Serial0C 192.168.3.0/24 is directly connected, Ethernet0
Baypointe 01:34:53: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (192.168.5.1)01:34:53: network 192.168.4.0, metric 101:34:53: network 192.168.1.0, metric 3
-
8/14/2019 Distance Vactor Routing Protocol Rip
103/134
Rick Graziani [email protected] 103
01:34:53: network 192.168.1.0, metric 301:34:53: network 192.168.2.0, metric 201:34:53: network 192.168.3.0, metric 201:34:53: RIP: sending v1 update to 255.255.255.255 via Serial0 (192.168.4.1)01:34:53: network 192.168.5.0, metric 1Baypointe#01:34:56: RIP: received v1 update from 192.168.4.2 on Serial001:34:56: 192.168.1.0 in 2 hops01:34:56: 192.168.2.0 in 1 hops01:34:56: 192.168.3.0 in 1 hops Baypointe#show ip routeCodes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter areaN1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGPi - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate defaultU - per-user static route, o - ODR
Gateway of last resort is not set
C 192.168.4.0/24 is directly connected, Serial0C 192.168.5.0/24 is directly connected, Ethernet0R 192.168.1.0/24 [120/2] via 192.168.4.2, 00:00:23, Serial0R 192.168.2.0/24 [120/1] via 192.168.4.2, 00:00:23, Serial0R 192.168.3.0/24 [120/1] via 192.168.4.2, 00:00:23, Serial0
Scenario 1: Running RIPv1 on classful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
104/134
Rick Graziani [email protected] 104
NOTE: At this point all routers should be able to ping all networks. We will discuss RIP muchmore in the chapter on Routing Protocols (RIP).
Step 4 Turning-off debug Dont forget to turn-off debug when you are done collecting the output. Router# undebug all
or Baypointe# undebug ip rip
Step 5 Reflections For each router compare the RIP received messages with its routing table. Now you see
how the information is entered into the routing table.
Cisco IOS uses split horizon with poison reverse, however this information is notdisplayed with debug ip rip command. You will notice that the routers send RIP messages out their stub Ethernet interfaces,
even though there are no routers out there to receive those messages. This does take upunnecessary bandwidth on the link; so later we will see how to keep those RIP messagesfrom going out those interfaces.
SanJose2
Scenario 2: Running RIPv1 on subnets and betweenclassful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
105/134
Rick Graziani [email protected] 105
SanJose2
hostname SanJose2interface ethernet 0
ip add 172.30.1.1 255.255.255.0interface serial 0
ip add 172.30.2.1 255.255.255.0 SanJose1
hostname SanJose1interface ethernet 0
ip add 172.30.3.1 255.255.255.0interface serial 0
ip add 172.30.2.2 255.255.255.0interface serial 1
ip add 192.168.4.9 255.255.255.252 Baypointe
hostname Baypointeinterface ethernet 0
ip add 192.168.5.1 255.255.255.0interface serial 0
ip add 192.168.4.10 255.255.255.252
Note: This lab has someimportant information regardingRIP and boundary routers!
Scenario 2: Running RIPv1 on subnets and betweenclassful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
106/134
Rick Graziani [email protected] 106
Objective: Running RIPv1 on subnets and between classful networks In this scenario we will see how subnetted routes are distributed with the same classful
network. We will also see how RIPv1 automatically summarizes between classfulnetwork boundaries. You will notice that SanJose1 and SanJose2 have subnetsbelonging to the 172.30.0.0 network, but Baypointe does not.
Making changes between Scenario 1 and Scenario 2 Be sure to change the IP addressing as displayed in the diagram and Basic Configuration
section for Scenario 2. Sometimes when changing the IP address on a serialinterface, you may need to reset that interface by doing a shutdown , wait for theLINK-5-CHANGED message, then follow it with a no shutdown command.
If you have just completed Scenario 1, lets remove RIP by issuing the following command
on each router :
Router(config)# no router rip
-
8/14/2019 Distance Vactor Routing Protocol Rip
107/134
-
8/14/2019 Distance Vactor Routing Protocol Rip
108/134
Scenario 2: Running RIPv1 on subnets and betweenclassful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
109/134
Rick Graziani [email protected] 109
Question: What would happen if you entered a network statement thatwas a subnet? For example:
SanJose2(config)# router ripSanJose2(config-router)# network 172.30.1.0 Answer: The IOS would automatically convert it to a classful network
statement:SanJose2# show running-configrouter rip
network 172.30.0.0
Step 2 Viewing the debug ip rip output and the routing tables SanJose2 SanJose2# debug ip rip00:14:10: RIP: received v1 update from 172 30 2 2 on Serial0
-
8/14/2019 Distance Vactor Routing Protocol Rip
110/134
Rick Graziani [email protected] 110
00:14:10: RIP: received v1 update from 172.30.2.2 on Serial000:14:10: 172.30.3.0 in 1 hops00:14:10: 192.168.4.0 in 1 hops00:14:10: 192.168.5.0 in 2 hopsSanJose2#00:14:29: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (172.30.1.1)00:14:29: subnet 172.30.2.0, metric 100:14:29: subnet 172.30.3.0, metric 200:14:29: network 192.168.4.0, metric 200:14:29: network 192.168.5.0, metric 300:14:29: RIP: sending v1 update to 255.255.255.255 via Serial0 (172.30.2.1)00:14:29: subnet 172.30.1.0, metric 1SanJose2#00:14:39: RIP: received v1 update from 172.30.2.2 on Serial000:14:39: 172.30.3.0 in 1 hops00:14:39: 192.168.4.0 in 1 hops00:14:39: 192.168.5.0 in 2 hopsSanJose2# undebug all SanJose2# show ip routeCodes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
Gateway of last resort is not set
172.30.0.0/24 is subnetted, 3 subnetsC 172.30.2.0 is directly connected, Serial0
R 172.30.3.0 [120/1] via 172.30.2.2, 00:00:08, Serial0C 172.30.1.0 is directly connected, Ethernet0R 192.168.4.0/24 [120/1] via 172.30.2.2, 00:00:08, Serial0R 192.168.5.0/24 [120/2] via 172.30.2.2, 00:00:08, Serial0
-
8/14/2019 Distance Vactor Routing Protocol Rip
111/134
SanJose1 SanJose1# debug ip ripRIP protocol debugging is onSanJose1#00:17:52: RIP: sending v1 update to 255 255 255 255 via Ethernet0 (172 30 3 1)
-
8/14/2019 Distance Vactor Routing Protocol Rip
112/134
Rick Graziani [email protected] 112
00:17:52: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (172.30.3.1)00:17:52: subnet 172.30.2.0, metric 100:17:52: subnet 172.30.1.0, metric 200:17:52: network 192.168.4.0, metric 100:17:52: network 192.168.5.0, metric 200:17:52: RIP: sending v1 update to 255.255.255.255 via Serial0 (172.30.2.2)00:17:52: subnet 172.30.3.0, metric 100:17:52: network 192.168.4.0, metric 100:17:52: network 192.168.5.0, metric 200:17:52: RIP: sending v1 update to 255.255.255.255 via Serial1 (192.168.4.9)00:17:52: network 172.30.0.0, metric 1SanJose1#
00:18:10: RIP: received v1 update from 172.30.2.1 on Serial000:18:10: 172.30.1.0 in 1 hopsSanJose1#00:18:12: RIP: received v1 update from 192.168.4.10 on Serial100:18:12: 192.168.5.0 in 1 hopsSanJose1# undebug all SanJose1# show ip routeCodes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
Gateway of last resort is not set
172.30.0.0/24 is subnetted, 3 subnetsC 172.30.2.0 is directly connected, Serial0C 172.30.3.0 is directly connected, Ethernet0
R 172.30.1.0 [120/1] via 172.30.2.1, 00:00:14, Serial0192.168.4.0/30 is subnetted, 1 subnets
C 192.168.4.8 is directly connected, Serial1
R 192.168.5.0/24 [120/1] via 192.168.4.10, 00:00:10, Serial1
Scenario 2: Running RIPv1 on subnets and betweenclassful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
113/134
Rick Graziani [email protected] 113
Reflections
The same subnet route information applies with routes sent fromSanJose2 to SanJose1 (see Reflections for SanJose2). SanJose1 knows that the 172.30.1.0 update has a subnet mask of /24
because it received it on an interface with a /24 subnet mask (Serial 0,172.30.3.2 255.255.255.0).
-
8/14/2019 Distance Vactor Routing Protocol Rip
114/134
Scenario 2: Running RIPv1 on subnets and betweenclassful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
115/134
Rick Graziani [email protected] 115
More Reflections IMPORTANT INFORMATION : Notice the RIP update being sent out Serial 1:RIP: sending v1 update to 255.255.255.255 via Serial1 (192.168.4.9)
network 172.30.0.0, metric 1
Compare that to the same information for the 172.30.0.0 network being sent outSerial 0 & Ethernet 0:
RIP: sending v1 update to 255.255.255.255 via Serial0 (172.30.2.2)subnet 172.30.3.0, metric 1
Notice that the 172.30.0.0 subnets are being summarized to their classfulnetwork address of 172.30.0.0 when sent out Serial 1 to Baypointe.
RIP automatically summarizes RIP updates between classful networks.Because the 172.30.0.0 update is being sent out an interface (Serial 1) on adifferent classful network (192.168.4.0), RIP sends out only a single update for the entire classful network instead of all of the different subnets. This is similar to what we did with summarizing several static routes into a single static route.
A router like SanJose1, which has an interface in more than one classfulnetwork is sometimes called a boundary router in RIP. Boundary routersautomatically summarize RIP subnets from one classful network to the other.
Scenario 2: Running RIPv1 on subnets and betweenclassful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
116/134
Rick Graziani [email protected] 116
More Reflections (continued)
How is this an advantage? Fewer updates sent and received, resulting in lessbandwidth used for routing updates between SanJose1 and Baypointe. Just asimportantly, Baypointe will now only have a single route for the 172.30.0.0/16network, no matter how many subnets there are or how it is subnetted. This willresult in faster lookup process in the routing table for Baypointe.
What do you expect to see in Baypointes received RIP messages and itsrouting table? Thats right, only a single 172.30.0.0 network via SanJose1.
Are there any disadvantages? Yes, discontinguous networks. We will seethis later, but the idea here is what if Baypointe had another connection viaSerial 1 to another router, SantaCruz1 on 192.168.4.12/30 subnet, which alsohas other 172.30.0.0/24 subnets (172.30.4.0/24, 172.30.5.0/24, etc.).Baypointe would also receive the same 172.30.0.0 network from SantaCruz1 aswell. Baypointe would not know how to reach the specific subnet, andmistakenly load-balance the packets between the two routers. We will see anexample of this later this semester.
Baypointe Baypointe# debug ip ripRIP protocol debugging is on
-
8/14/2019 Distance Vactor Routing Protocol Rip
117/134
Rick Graziani [email protected] 117
Baypointe#
00:20:09: RIP: received v1 update from 192.168.4.9 on Serial000:20:09: 172.30.0.0 in 1 hopsBaypointe#00:20:24: RIP: sending v1 update to 255.255.255.255 via Ethernet0 (192.168.5.1)
00:20:24: network 172.30.0.0, metric 2
00:20:24: network 192.168.4.0, metric 1
00:20:24: RIP: sending v1 update to 255.255.255.255 via Serial0 (192.168.4.10)
00:20:24: network 192.168.5.0, metric 1
Baypointe#Baypointe# undebug all Baypointe# show ip routeCodes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
Gateway of last resort is not set
R 172.30.0.0/16 [120/1] via 192.168.4.9, 00:00:11, Serial0
192.168.4.0/30 is subnetted, 1 subnets
C 192.168.4.8 is directly connected, Serial0
C 192.168.5.0/24 is directly connected, Ethernet0
Scenario 2: Running RIPv1 on subnets and betweenclassful networks
-
8/14/2019 Distance Vactor Routing Protocol Rip
118/134
Rick Graziani [email protected] 118
Reflections Notice that Baypointe is only receiving the classful summary of the 172.30.0.0
subnets:RIP: received v1 update from 192.168.4.9 on Serial0
172.30.0.0 in 1 hops SanJose1 automatically summarized the subnets into a single classful update. This keeps Baypointes routing table smaller, resulting in faster routing table
lookups. This also isolates any changes in the 172.30.0.0 network on SanJose1 and
SanJose2 from affecting Baypointe. In other words, SanJose1 and SanJose2can add and delete 172.30.0.0/24 subnets without affecting Baypointes routingtable, as Baypointe doesnt care. Baypointe will send all packets destined for the 172.30.0.0/16 network to SanJose1. Baypointes routing table:
R 172.30.0.0/16 [120/1] via 192.168.4.9, 00:00:11, Serial0
Also, the subnet mask scheme could be changed (i.e. to /27) on the 172.30.0.0network without affecting Baypointes routing table or the RIP update sent toBaypointe by SanJose1.
Scenario 3: Running RIPv1 on a stub networkSanJose2
hostname SanJose2
-
8/14/2019 Distance Vactor Routing Protocol Rip
119/134
Rick Graziani [email protected] 119
hostname SanJose2interface ethernet 0
ip add 172.30.1.1 255.255.255.0interface serial 0
ip add 172.30.2.1 255.255.255.0 SanJose1
hostname SanJose1interface ethernet 0
ip add 172.30.3.1 255.255.255.0interface serial 0
ip add 172.30.2.2 255.255.255.0interface serial 1
ip add 192.168.4.9 255.255.255.252 Baypointe
hostname Baypointeinterface ethernet 0
ip add 192.168.5.1 255.255.255.0interface serial 0
ip add 192.168.4.10 255.255.255.252
Objective: Running RIPv1 on a stub network In this scenario we will modify Scenario 2 to only run RIP between SanJose1 and SanJose2. Scenario 3 is a
very common situation for many companies. It is very common that a company will want to run a
-
8/14/2019 Distance Vactor Routing Protocol Rip
120/134
Rick Graziani [email protected] 120
dynamic routing protocol (RIPv1 in our case) within their own network, but find in unnecessary to run adynamic routing protocol between their company and their ISP.
For Scenario 3 let us assume that Baypointe is the ISP for our Company XYZ, which consists of theSanJose1 and SanJose2 routers using the 172.30.0.0/16 major network, subnetted with a /24 mask.
Company XYZ is a stub network, meaning there is only one way in and out of the 172.30.0.0/16 network, in
via SanJose1 (a.k.a. the entrance router) and out via Baypointe (the ISP). It is doesnt make sense for SanJose1 to send Baypointe the RIP update of 172.30.0.0 every 30 seconds, because Baypointe has noother way to get there. RIP update message from SanJose1 to Baypointe, if RIP were configured:
RIP: received v1 update from 192.168.4.9 on Serial0172.30.0.0 in 1 hops
Instead, it makes more sense for Baypointe to have a static route configured for the 172.30.0.0/16 networkvia SanJose1.
Well, how about traffic from Company XYZ towards the Internet? It makes no sense for Baypointe to send
more than the 120,000 summarized Internet routes to SanJose1. All SanJose1 needs to know is that if it is not in the 172.30.0.0 network then send it to the ISP, Baypointe. This is the same for all other Company XYZ routers (only SanJose2 in our case), that they would send all traffic with destination IPaddresses other than 172.30.0.0 to SanJose1 who would forward them on to Baypointe. Lets see howto configure this.
-
8/14/2019 Distance Vactor Routing Protocol Rip
121/134
Step 1 Configuring RIP on SanJose1 and SanJose2 Here are the commands for each router:
-
8/14/2019 Distance Vactor Routing Protocol Rip
122/134
Rick Graziani [email protected] 122
Here are the commands for each router: SanJose2# configure terminalEnter configuration commands, one per line. End with CNTL/Z.
SanJose2(config)# router ripSanJose2(config-router)# network 172.30.0.0 SanJose1#
configure terminalEnter configuration commands, one per line. End with CNTL/Z.SanJose1(config)# router ripSanJose1(config-router)# network 172.30.0.0
Notice that we are only including the 172.30.0.0 interfaces, networks, for SanJose1.We will not be exchanging RIP updates with Baypointe via the 192.168.4.0/30network.
Step 2 - Configuring the default static route on SanJose1 On SanJose1, lets configure a static default route, sending all default traffic, packets with
-
8/14/2019 Distance Vactor Routing Protocol Rip
123/134
Rick Graziani [email protected] 123
g g pdestination IP addresses which do not match a specific route in the routing table, toBaypointe.
SanJose1(config)# ip route 0.0.0.0 0.0.0.0 serial 1 Notice, since the exit interface is a point-to-point serial interface we chose to use the exit-
interface instead of a intermediate-address (next-hop-ip address), saving the router fromhaving to do a recursive lookup. However, using an intermediate-address (next-hop-ip-address) would have worked also.
Previous to IOS version 12.1, SanJose1 would propagate, send, t