Gateway of last resort is not set

172.16.0.0/24 is subnetted, 4 subnets

R 172.16.4.0 [120/1] via 172.16.3.2, 00:00:13, Ethernet0/0

C 172.16.1.0 is directly connected, Ethernet0/1

R 172.16.2.0 [120/1] via 172.16.1.2, 00:00:11, Ethernet0/1

[120/1] via 172.16.3.2, 00:00:13, Ethernet0/0

C 172.16.3.0 is directly connected, Ethernet0/0

testTJ#sh ip route

Gateway of last resort is not set

172.16.0.0/24 is subnetted, 4 subnets

C 172.16.4.0 is directly connected, Ethernet0/0

R 172.16.1.0 [120/1] via 172.16.3.3, 00:00:07, Ethernet0/1

[120/1] via 172.16.2.3, 00:00:19, Serial1/0

C 172.16.2.0 is directly connected, Serial1/0

C 172.16.3.0 is directly connected, Ethernet0/1

分析上述命令输出时,一定要随时参照拓扑图,离开网络拓扑,上面的信息就没有任何意义。动态路由的灵活性体现在一条链路出现故障,路由算法会自动切换到迂回链路上。例如我们将testBJ和testTJ之间的串行线缆断开,一段时间后,再检查路由表,如下所示。

testBJ#sh ip route

Gateway of last resort is not set

172.16.0.0/24 is subnetted, 3 subnets

R 172.16.4.0 [120/2] via 172.16.1.3, 00:00:22, Ethernet0/1

C 172.16.1.0 is directly connected, Ethernet0/1

R 172.16.3.0 [120/1] via 172.16.1.3, 00:00:22, Ethernet0/1

我们发现串行链路所在的子网2断开了,到网络172.16.4.0网络的数据包都将绕经testSH路由器。

sh ip protocols命令可以显示当前路由协议的状况,如下所示。

testBJ#sh ip protocols

Routing Protocol is "rip"

Sending updates every 30 seconds, next due in 19 seconds

Invalid after 180 seconds, hold down 180, flushed after 240

Outgoing update filter list for all interfaces is not set

Incoming update filter list for all interfaces is not set

Redistributing: connected, rip

Default version control: send version 1, receive any version

Interface Send Recv Key-chain

Ethernet0/1 1 1 2

Serial1/0 1 1 2

Routing for Networks:

172.16.0.0

Routing Information Sources:

Gateway Distance Last Update

172.16.2.2 120 00:00:05

172.16.1.3 120 00:00:27

Distance: (default is 120)

从命令输出中,可以看出RIP协议的基本配置,还可以得知与当前路由器交换信息的路由器有testTJ(172.16.2.2)和testSH(172.16.1.3)两台路由器,上次接收路由信息分别在5秒和27秒之前。

要了解路由器之间交换路由信息的详情,可以使用debug ip rip命令。如下所示,输入命令后,隔一段时间,控制台上出现接收或者发送RIP广播的信息。

testBJ#debug ip rip

RIP protocol debugging is on

testBJ#

RIP: received v1 update from 172.16.2.2 on Serial1/0

172.16.4.0 in 1 hops

172.16.3.0 in 1 hops

RIP: received v1 update from 172.16.1.3 on Ethernet0/1

172.16.4.0 in 2 hops

172.16.3.0 in 1 hops

RIP: sending v1 update to 255.255.255.255 via Ethernet0/1 (172.16.1.2)

subnet 172.16.4.0, metric 2

subnet 172.16.2.0, metric 1

RIP: sending v1 update to 255.255.255.255 via Serial1/0 (172.16.2.3)

subnet 172.16.1.0, metric 1

RIP: received v1 update from 172.16.1.3 on Ethernet0/1

172.16.4.0 in 2 hops

172.16.3.0 in 1 hops

RIP: received v1 update from 172.16.2.2 on Serial1/0

172.16.4.0 in 1 hops

172.16.3.0 in 1 hops

testBJ#no debug all

All possible debugging has been turned off

testBJ#

从上述信息中可以得到RIP广播的详情。路由器先是从testTJ收到子网3、4的信息,然后又从testSH收到子网3、4的信息。其中,到子网4走testTJ一跳,走testSH两跳,所以,路由表中反映出来的是经由testTJ到子网4;到子网3的距离都是一跳,所以,路由表中有两条并列的路由。

一段时间后,当前路由器的更新计时达到30秒,于是,它在两条链路上广播自身的路由表信息。注意,广播路由更新时,RIP采用了水平分割机制,从一个端口上学得的信息就不在这个端口上进行广播,所以当前路由器testBJ只发送子网172.16.1.0的路由信息。

使用no debug all命令结束调试信息的显示。需要注意的是debug命令非常消耗路由器资源,所以不要在通讯繁忙的路由器上使用,否则,路由器就会象死机一样停止反应。

怎么样,你看一遍这篇文章用了多少时间。下面可以找几台路由器,试着配置一下,不是很困难吧。

体会网络连通时的乐趣,将这里作为你学习路由器的起点,IGRP、OSPF、HSRP等等,不过,再往后学,100分钟可就不够了……