RIP Basic
Configuration for
CCNA Students
By
Eng. Abeer Hosni
https://www.facebook.com/groups/1720572871550995/
Lab 1 (Basic Configuration):
R1(config)#int f0/0
R1(config-if)#ip address 10.0.0.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#int loop 1
R1(config-if)#ip address 1.1.1.1 255.255.255.255
R2(config)#int f0/1
R2(config-if)#ip address 10.0.0.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#int loop 2
R2(config-if)#ip address 2.2.2.2 255.255.255.255
R1#show ip protocol
Nothing shows up as we haven’t configured any routing protocol yet.
To configure RIP on both routers:
R1(config)#router rip
R1(config-router)#network 10.0.0.0
R1(config-router)#network 1.0.0.0
R2(config)#router rip
R2(config-router)#network 10.0.0.0
R2(config-router)#network 2.0.0.0
To verify:
R1#show ip route
<Output omitted>
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback1
R 2.0.0.0/8 [120/1] via 10.0.0.2, 00:00:01, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
R1#ping 2.2.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:
!!!!!
R2(config-router)#do show ip route
<Output omitted>
R 1.0.0.0/8 [120/1] via 10.0.0.1, 00:00:03, FastEthernet0/1
2.0.0.0/32 is subnetted, 1 subnets
C 2.2.2.2 is directly connected, Loopback2
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/1
Notice that the update time shouldn’t exceed 30 sec and if it exceeds that time, this is an
indicator of a problem in the update between the two routers.
R1#show ip protocol
Routing Protocol is "rip"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Sending updates every 30 seconds, next due in 18 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Redistributing: rip
Default version control: send version 1, receive any version
Interface Send Recv Triggered RIP Key-chain
FastEthernet0/0 1 12
Loopback1 1 12
Automatic network summarization is in effect
Maximum path: 4
Routing for Networks:
1.0.0.0
10.0.0.0
Routing Information Sources:
Gateway Distance Last Update
10.0.0.2 120 00:00:06
Distance: (default is 120)
Notice that the default is sending RIP v1 and receive any version. To hard code the
configuration to send and receive version 1 only:
R1(config)#router rip
R1(config-router)#version 1
Notice that the router now sends and receives version 1 only.
R1(config-router)#do show ip protocol
Routing Protocol is "rip"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Sending updates every 30 seconds, next due in 26 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Redistributing: rip
Default version control: send version 1, receive version 1
Interface Send Recv Triggered RIP Key-chain
FastEthernet0/0 1 1
Loopback1 1 1
Automatic network summarization is in effect
Maximum path: 4
Routing for Networks:
1.0.0.0
10.0.0.0
Routing Information Sources:
Gateway Distance Last Update
10.0.0.2 120 00:00:09
Distance: (default is 120)
This may cause a problem as version 1 and version 2 is not compatible with each other.
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#do show ip protocol
Routing Protocol is "rip"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Sending updates every 30 seconds, next due in 4 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Redistributing: rip
Default version control: send version 2, receive version 2
Interface Send Recv Triggered RIP Key-chain
FastEthernet0/1 2 2
Loopback2 2 2
Automatic network summarization is in effect
Maximum path: 4
Routing for Networks:
2.0.0.0
10.0.0.0
Routing Information Sources:
Gateway Distance Last Update
10.0.0.1 120 00:00:14
Distance: (default is 120)
R1(config-router)#do show ip route
<Output omitted>
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback1
R 2.0.0.0/8 [120/1] via 10.0.0.2, 00:00:34, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
Notice that the timer is more than 30 sec. After 180 sec, the invalid after timer the network is
still in the routing table but is possibly down.
R1#show ip route
<Output omitted>
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback1
R 2.0.0.0/8 is possibly down, routing via 10.0.0.2, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
After 240 sec, the flush timer from the beginning (60 sec more), the network is completely
flushed of the routing table.
R1#show ip route
<Output omitted>
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback1
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
We will run Debugging on R2 to figure out the problem:
R1#debug ip rip
RIP protocol debugging is on
May 13 12:01:47.843: RIP: sending v1 update to 255.255.255.255 via FastEthernet0/0 (10.0.0.1)
May 13 12:01:47.843: RIP: build update entries
May 13 12:01:47.843: network 1.0.0.0 metric 1
May 13 12:01:56.407: RIP: ignored v2 packet from 10.0.0.2 (illegal version)
R1#u all
All possible debugging has been turned off
R2#debug ip rip
RIP protocol debugging is on
May 13 12:02:45.459: RIP: sending v2 update to 224.0.0.9 via FastEthernet0/1 (10.0.0.2)
May 13 12:02:45.459: RIP: build update entries
May 13 12:02:45.459: 2.2.2.2/32 via 0.0.0.0, metric 1, tag 0
May 13 12:02:46.611: RIP: sending v2 update to 224.0.0.9 via Loopback2 (2.2.2.2)
May 13 12:02:46.611: RIP: build update entries
May 13 12:02:46.611: 10.0.0.0/24 via 0.0.0.0, metric 1, tag 0
May 13 12:02:46.619: RIP: ignored v2 packet from 2.2.2.2 (sourced from one of our addresses)
May 13 12:03:05.927: RIP: ignored v1 packet from 10.0.0.1 (illegal version)
R2#u all
All possible debugging has been turned off
Notice that RIP version 1 sends its update using the broadcast address 255.255.255.255, and
RIP version 2 sends its update using the multicast address 224.0.0.9.
If we configure R1 to use the default which is sending version 1 and receive any version, and
hard code R2 to use version 2, R1 will receive all the updates from R2 but R2 will not accept any
updates from R1.
R1(config)#router rip
R1(config-router)#no version
R2(config)#router rip
R2(config-router)#version 2
R1#show ip route rip
<Output omitted>
R 2.0.0.0/8 [120/1] via 10.0.0.2, 00:00:26, FastEthernet0/0
R2#show ip route rip
Nothing shows up.
Lab 2 (RIP Authentication):
Using the previous topology.
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#no auto-summary
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#no auto-summary
We must synchronize the clock on both routers.
R1,R2# clock set 11:20:00 may 13 2014
R1#show clock
11:20:35.651 UTC Tue May 13 2014
R1(config)#key chain CISCO1
R1(config-keychain)#key 1
R1(config-keychain-key)#key-string CCNA
R1(config-keychain-key)#accept-lifetime 00:00:00 1 jan 2014 00:00:00 1 june 2014
R1(config-keychain-key)#send-lifetime 00:00:00 1 jan 2014 00:00:00 1 june 2014
R1(config-keychain)#key 2
R1(config-keychain-key)#key-string CCNP
R1(config-keychain-key)#accept-lifetime 00:00:00 1 june 2014 infinite
R1(config-keychain-key)#send-lifetime 00:00:00 1 june 2014 infinite
R1(config-keychain-key)#int f0/0
R1(config-if)#ip rip authentication key-chain CISCO1
R1(config-if)#ip rip authentication mode text
R1#show key chain
Key-chain CISCO1:
key 1 -- text "CCNA"
accept lifetime (00:00:00 UTC Jan 1 2014) - (00:00:00 UTC Jun 1 2014) [valid now]
send lifetime (00:00:00 UTC Jan 1 2014) - (00:00:00 UTC Jun 1 2014) [valid now]
key 2 -- text "CCNP"
accept lifetime (00:00:00 UTC Jun 1 2014) - (infinite)
send lifetime (00:00:00 UTC Jun 1 2014) - (infinite)
Note: The key chain name is locally significant, meaning it doesn’t have to match on both
routers. The key ID is locally significant if we use the clear text mode, but must match if we use
the MD5 mode. The key string obviously must match.
Now R2 can’t see the updates from R1 as we haven’t configured the authentication on R2 yet.
And to figure out the problem, we will run the debug on R2.
R2#debug ip rip
RIP protocol debugging is on
May 13 11:29:45.791: RIP: sending v2 update to 224.0.0.9 via Loopback2 (2.2.2.2)
May 13 11:29:45.791: RIP: build update entries
May 13 11:29:45.795: 10.0.0.0/24 via 0.0.0.0, metric 1, tag 0
May 13 11:29:45.803: RIP: ignored v2 packet from 2.2.2.2 (sourced from one of our addresses)
May 13 11:29:47.479: RIP: sending v2 update to 224.0.0.9 via FastEthernet0/1 (10.0.0.2)
May 13 11:29:47.479: RIP: build update entries
May 13 11:29:47.479: 2.2.2.2/32 via 0.0.0.0, metric 1, tag 0
May 13 11:29:57.527: RIP: ignored v2 packet from 10.0.0.1 (invalid authentication)
R2#u all
All possible debugging has been turned off
So we will run the same authentication on R2.
R2(config)#key chain CISCO2
R2(config-keychain)# key 1
R2(config-keychain-key)# key-string CCNA
R2(config-keychain-key)# accept-lifetime 00:00:00 1 jan 2014 00:00:00 1 june 2014
R2(config-keychain-key)# send-lifetime 00:00:00 1 jan 2014 00:00:00 1 june 2014
R2(config-keychain-key)# key 2
R2(config-keychain-key)# key-string CCNP
R2(config-keychain-key)# accept-lifetime 00:00:00 Jun 1 2014 infinite
R2(config-keychain-key)# send-lifetime 00:00:00 Jun 1 2014 infinite
R2(config-keychain-key)#int f0/1
R2(config-if)#ip rip authentication key-chain CISCO2
R2(config-if)#ip rip authentication mode text
Now we will run debug again to see the problem with clear text authentication:
R2#debug ip rip
RIP protocol debugging is on
May 13 11:37:49.939: RIP: received packet with text authentication CCNA
May 13 11:37:49.939: RIP: received v2 update from 10.0.0.1 on FastEthernet0/1
May 13 11:37:49.943: 1.1.1.1/32 via 0.0.0.0 in 1 hops
R2#u all
All possible debugging has been turned off
And if we run wire shark to capture the traffic between R1 and R2, we will see the key.
Now we will run the more secured mode of authentication which is MD5.
R1(config)#int f0/0
R1(config-if)#ip rip authentication mode md5
Notice that clear text authentication and MD5 authentication is not compatible with each
other.
R2#debug ip rip
RIP protocol debugging is on
May 13 11:42:59.491: RIP: ignored v2 packet from 10.0.0.1 (invalid authentication)
R2#u all
All possible debugging has been turned off
We will run MD5 authentication on both routers.
R2(config)#int f0/1
R2(config-if)#ip rip authentication mode md5
R2#show ip route rip
<Output omitted>
1.0.0.0/32 is subnetted, 1 subnets
R 1.1.1.1 [120/1] via 10.0.0.1, 00:02:15, FastEthernet0/1
R2#debug ip rip
RIP protocol debugging is on
May 13 11:44:52.275: RIP: received packet with MD5 authentication
May 13 11:44:52.279: RIP: received v2 update from 10.0.0.1 on FastEthernet0/1
May 13 11:44:52.279: 1.1.1.1/32 via 0.0.0.0 in 1 hops
R2#u all
All possible debugging has been turned off
Notice that the debug couldn’t pick the key.
We will run wire shark to capture the traffic between the two routers.
Lab 3 (RIP Equal Cost Load Balance):
We will maximize the previous lab to use three routers instead of only two routers.
R1(config)#int f0/1
R1(config-if)#ip address 11.0.0.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#router rip
R1(config-router)#version 2 (Done before)
R1(config-router)#no auto-summary (Done before)
R1(config-router)#network 11.0.0.0
R2(config)#int f0/0
R2(config-if)#ip address 12.0.0.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#router rip
R2(config-router)#version 2 (Done before)
R2(config-router)#no auto-summary (Done before)
R2(config-router)#network 12.0.0.0
R3(config)#int f0/0
R3(config-if)#ip address 11.0.0.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#int f0/1
R3(config-if)#ip address 12.0.0.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#router rip
R3(config-router)#version 2
R3(config-router)#no auto-summary
R3(config-router)#network 11.0.0.0
R3(config-router)#network 12.0.0.0
R1#show ip route rip
<Output omitted>
2.0.0.0/32 is subnetted, 1 subnets
R 2.2.2.2 [120/1] via 10.0.0.2, 00:00:21, FastEthernet0/0
12.0.0.0/24 is subnetted, 1 subnets
R 12.0.0.0 [120/1] via 11.0.0.3, 00:00:19, FastEthernet0/1
[120/1] via 10.0.0.2, 00:00:21, FastEthernet0/0
Notice that R1 can see the 12.0.0.0 network using two paths, via 11.0.0.3 and via 10.0.0.2, as there
is a tie in the administrative distance which is 120, and there is a tie also in the metric value
which is 1. This is called Equal Cost Load Balance.
To verify:
R1#traceroute 12.0.0.2
Type escape sequence to abort.
Tracing the route to 12.0.0.2
1 11.0.0.3 100 msec
10.0.0.2 60 msec
11.0.0.3 44 msec
R1#traceroute 12.0.0.3
Type escape sequence to abort.
Tracing the route to 12.0.0.3
1 10.0.0.2 80 msec
11.0.0.3 96 msec
10.0.0.2 56 msec
R1#show ip protocol
Routing Protocol is "rip"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Sending updates every 30 seconds, next due in 23 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Redistributing: rip
Default version control: send version 2, receive version 2
Interface Send Recv Triggered RIP Key-chain
FastEthernet0/0 2 2
FastEthernet0/1 2 2
Loopback1 2 2
Automatic network summarization is not in effect
Maximum path: 4
Routing for Networks:
1.0.0.0
10.0.0.0
11.0.0.0
Routing Information Sources:
Gateway Distance Last Update
11.0.0.3 120 00:00:19
10.0.0.2 120 00:00:18
Distance: (default is 120)
By default the RIP routing protocol supports four paths to use in equal cost load balance. But this
can be changed under the RIP process.
R1(config)#router rip
R1(config-router)#maximum-path ?
<1-16> Number of paths
Notes:
Passive interface command
-Used to prevent a router from sending updates through an interface
-Example:
Router(config-router)#passive-interface interface-type interface-number
Default-information originate command
-This command is used to specify that the router is to originate default information, by
propagating the static default route in RIP update. (Will be discussed later in OPSF routing
protocol)
Lab 4 (Floating Static Route):
Floating Static Routs means that we change the default Administrative Distance of the static
routing from 1 to a higher value. We will configure R1 to see the 2.2.2.2/32 network using RIP
and static routing. The default is that R1 will see that network using static routing via R2 serial
1/1 interface as static routing has a lower Administrative Distance, But we will change that and
increase the Administrative Distance of static routing, so that R1 will see the network 2.2.2.2/32
using RIP routing protocol as it has a higher scalability.
R1(config)#int f0/0
R1(config-if)#ip address 10.0.0.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#int s1/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#router rip
R1(config-router)#version 2
R1(config-router)#no auto-summary
R1(config-router)#network 10.0.0.0
R2(config)#int f0/0
R2(config-if)#ip address 10.0.0.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#int s1/1
R2(config-if)#ip address 192.168.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#int loop 2
R2(config-if)#ip address 2.2.2.2 255.255.255.255
R2(config-if)#router rip
R2(config-router)#network 10.0.0.0
R2(config-router)#network 2.0.0.0
R2(config-router)#version 2
R2(config-router)#no auto-summary
R3(config)#int f0/0
R3(config-if)#ip address 10.0.0.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#router rip
R3(config-router)#version 2
R3(config-router)#no auto-summary
R3(config-router)#network 10.0.0.0
Now we will configure R1 to see the 2.2.2.2/32 network using static route but will increase the
Administrative Distance value.
R1(config)#ip route 2.2.2.2 255.255.255.255 192.168.1.2 121
To verify:
R1#show ip route
<Output omitted>
2.0.0.0/32 is subnetted, 1 subnets
R 2.2.2.2 [120/1] via 10.0.0.2, 00:00:17, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
C 192.168.1.0/24 is directly connected, Serial1/0
Now R1 sees the 2.2.2.2/32 using RIP as it has a lower Administrative Distance AD.
R1(config)#int f0/0
R1(config-if)#shutdown
R1#show ip route
<Output omitted>
2.0.0.0/32 is subnetted, 1 subnets
S 2.2.2.2 [121/0] via 192.168.1.2
C 192.168.1.0/24 is directly connected, Serial1/0
Immediately R1 changes its path to reach the 2.2.2.2/32 network using the static route. And
when the interface f0/0 comes up again it will use it to reach the 2.2.2.2/32 network.
R1(config)#int f0/0
R1(config-if)#no shutdown
R1(config-if)#do show ip route
<Output omitted>
2.0.0.0/32 is subnetted, 1 subnets
R 2.2.2.2 [120/1] via 10.0.0.2, 00:00:01, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, FastEthernet0/0
C 192.168.1.0/24 is directly connected, Serial1/0
R1#traceroute 2.2.2.2
Type escape sequence to abort.
Tracing the route to 2.2.2.2
1 10.0.0.2 100 msec * 76 msec
Best Wishes
Abeer