当前位置:首页 > 2、路由故障排除实验教师用书
网络故障诊断与排除
路由故障排除实验教师用书
由于路由器C和路由器D之间是EBGP邻居关系,而在路由器D上已经成功的引入了RIP路由。这时,我们可以在路由器C上查看一下路由表,看有什么变化:
[C]dis ip routing-table Routing Table: public net
Destination/Mask Proto Pref Metric Nexthop Interface 10.1.1.0/24 OSPF 10 4686 150.1.1.2 Serial0/1 10.1.2.0/24 OSPF 10 4686 150.1.1.2 Serial0/1 20.0.0.0/8 BGP 170 0 202.1.1.2 Serial0/0 30.0.0.0/8 BGP 170 0 202.1.1.2 Serial0/0 40.0.0.0/8 BGP 170 0 202.1.1.2 Serial0/0 127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBack0 127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0 150.1.1.0/24 Direct 0 0 150.1.1.1 Serial0/1 150.1.1.1/32 Direct 0 0 127.0.0.1 LoopBack0 192.168.1.0/24 BGP 170 0 202.1.1.2 Serial0/0 194.186.23.0/24 Aggreg 130 0 127.0.0.1 LoopBack0 194.186.23.0/25 BGP 170 0 200.1.1.2 Serial0/1 194.186.23.128/25 BGP 170 0 150.1.1.2 Serial0/1 200.1.1.0/24 OSPF 10 3124 150.1.1.2 Serial0/1 202.1.1.0/24 Direct 0 0 202.1.1.2 Serial0/0 202.1.1.1/32 Direct 0 0 127.0.0.1 LoopBack0
由上面的信息我们可以发现,多了三条到路由器E用户网段的BGP路由。这时我们可以试着从路由器C上Ping路由器E上的三个用户网段,发现已经可以Ping通了。
接下来我们再回到路由器B上,同样试着Ping路由器E上的三个用户网段,但这次却无法Ping通,在B的路由表中,也没有相应的路由信息。在路由器A上,也有相同的问题。
在这种情况下,既然路由器C已经成功的学习到了相应的路由并采用了这些路由,是不是C没有把这些路由发布给自己的IBGP邻居呢?
为了检查这一点,我们可以在路由器B上查看一下其收到的所有BGP路由,采用查看BGP路由表的命令“display bgp”:
[B]display ip routing-table prococal bgp
BGP local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, > best, i internal Origin codes: i - IGP, e - EGP, ? - incomplete
20
网络故障诊断与排除
路由故障排除实验教师用书
Network Next Hop Metric LocPrf Path * i 10.1.1.0/24 150.1.1.1 4686 100 ? * i 10.1.2.0/24 150.1.1.1 4686 100 ? i 20.0.0.0 202.1.1.2 100 200 ? i 30.0.0.0 202.1.1.2 100 200 ? i 40.0.0.0 202.1.1.2 100 200 ? i 192.168.1.0 202.1.1.2 100 200 ? i 192.168.1.2/32 202.1.1.2 100 200 ? *>i 194.186.23.0 150.1.1.1 100 i *>i 194.186.23.0/25 200.1.1.2 100 i *> 194.186.23.128/25 0.0.0.0 i * i 200.1.1.0 150.1.1.1 3124 100 ?
在BGP路由表中,我们可以看到路由器B已经收到了C通告给它的三条BGP路由,但是它并没有把它们加入到IP路由表当中去。为什么会这样呢?对此我们可以观察一下这三条路由的下一跳,可以发现其下一跳都是路由器D与路由器C直连的接口202.1.1.2,而不是C和B相连的接口。这是因为BGP在通告路由时的另一条规则:当BGP speaker从EBGP邻居那里学习到路由的时候,它会把此路由原封不动的通告给它的IBGP邻居,不会改变其下一跳地址。而这时对于路由器B来说,它根本就不知道如何到达202.1.1.2,因此这是一条下一跳不可达的路由,它不会把它加入到路由表中去。因此从路由器B和A也无法Ping通相应的目的网段了。
为了解决这个问题,我们可以在路由器C上配置强制下一跳命令,这样C在通告给IBGP邻居路由时就会把下一跳改过来,命令如下:
[C-bgp]peer as100 next-hop-local
现在我们再在路由器B和A上查看IP路由表时会发现,已经把相应网段加入到了路由表中,且下一跳为150.1.1.1:
[B]display ip routing-table Routing Tables:
Destination/Mask Proto Pref Metric Nexthop Interface 10.1.1.0/24 OSPF 10 3124 200.1.1.2 Serial0/1 10.1.2.0/24 OSPF 10 3124 200.1.1.2 Serial0/1 20.0.0.0/8 BGP 170 0 150.1.1.1 Serial0/0 30.0.0.0/8 BGP 170 0 150.1.1.1 Serial0/0 40.0.0.0/8 BGP 170 0 150.1.1.1 Serial0/0 127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBack0 127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0 150.1.1.0/24 Direct 0 0 150.1.1.2 Serial0/0 150.1.1.2/32 Direct 0 0 127.0.0.1 LoopBack0
21
网络故障诊断与排除
路由故障排除实验教师用书
192.168.1.0/24 BGP 170 0 150.1.1.1 Serial0/0 194.186.23.0/25 BGP 170 0 200.1.1.2 Serial0/1 194.186.23.128/25 Direct 0 0 194.186.23.129 Ethernet0/0 194.186.23.129/32 Direct 0 0 127.0.0.1 LoopBack0 200.1.1.0/24 Direct 0 0 200.1.1.2 Serial0/1 200.1.1.1/32 Direct 0 0 127.0.0.1 LoopBack0 [A]dis ip routing-table Routing Tables:
Destination/Mask Proto Pref Metric Nexthop Interface 10.1.1.0/24 Direct 0 0 10.1.1.1 LoopBack1 10.1.1.1/32 Direct 0 0 127.0.0.1 LoopBack0 10.1.2.0/24 Direct 0 0 10.1.2.1 LoopBack2 10.1.2.1/32 Direct 0 0 127.0.0.1 LoopBack0 20.0.0.0/8 BGP 170 0 150.1.1.1 Serial0/0 30.0.0.0/8 BGP 170 0 150.1.1.1 Serial0/0 40.0.0.0/8 BGP 170 0 150.1.1.1 Serial0/0 127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBack0 127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0 150.1.1.0/24 OSPF 10 3124 200.1.1.1 Serial0/0 192.168.1.0/24 BGP 170 0 150.1.1.1 Serial0/0 192.168.1.2/32 BGP 170 0 150.1.1.1 Serial0/0 194.186.23.0/24 BGP 170 0 150.1.1.1 Serial0/0 194.186.23.0/25 Direct 0 0 194.186.23.1 Ethernet0/0 194.186.23.1/32 Direct 0 0 127.0.0.1 LoopBack0 194.186.23.128/25 BGP 170 0 200.1.1.1 Serial0/0 200.1.1.0/24 Direct 0 0 200.1.1.1 Serial0/0 200.1.1.1/32 Direct 0 0 200.1.1.1 Serial0/0
这时如果我们从路由器A和B上的用户网段Ping路由器E上的用户网段20.1.1.1/24、30.1.1.1/18、40.1.1.1/22,会发现已经可以Ping通了。到这一步我们已经成功的排除了该网络中的全部故障点,达到了各用户网段之间的互通。 注意:
在这里,细心的学员可能会注意到,如果从路由器B上直接Ping路由器E的用户网段,是无法Ping通的,但是在路由器B的所连的用户网段上却可以,这是为什么呢? [B]ping 20.1.1.1
PING 20.1.1.1: 56 data bytes, press CTRL_C to break Request time out Request time out
--- 20.1.1.1 ping statistics --- 3 packets transmitted
22
网络故障诊断与排除
路由故障排除实验教师用书
0 packets received 100.00% packet loss
[B]ping -a 194.186.23.129 20.1.1.1
PING 20.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 20.1.1.1: bytes=56 Sequence=0 ttl=253 time = 83 ms Reply from 20.1.1.1: bytes=56 Sequence=1 ttl=253 time = 82 ms Reply from 20.1.1.1: bytes=56 Sequence=2 ttl=253 time = 84 ms Reply from 20.1.1.1: bytes=56 Sequence=3 ttl=253 time = 83 ms Reply from 20.1.1.1: bytes=56 Sequence=4 ttl=253 time = 82 ms
--- 20.1.1.1 ping statistics --- 5 packets transmitted 5 packets received 0.00% packet loss
round-trip min/avg/max = 82/82/84 ms 实际上这并不是什么大问题。我们知道在路由器B上去往路由器E用户网段的路由都是没问题的,问题就出在回来的路由上。通过观察路由器D上的路由表我们可以发现,有到路由器B用户网段194.186.23.128/25的BGP路由,但是没有到路由器B和C之间的150.1.1.0/24网段的路由。而如果我们直接从路由器B上Ping的话,其源地址为150.1.1.2,所以这样就没有回来的路由,而造成无法Ping通。
实际上这个问题并不会影响到各用户网段之间的互通,当然如果需要在网络中的每一点都达到互通,我们还是可以用一定的方法来解决这个问题。比如说在路由器C上引入所有直连路由,就可以解决这个问题。
1.6 教师实验指导建议
1.6.1 分组建议
由于本实验总共需要五台路由器,因此在开班人数较多时建议分成两组进行,但每组的人数最好不要超过五人,否则会影响实验效果。
1.6.2 组长推举以及组员分工
在分组之后,需要推举出一个组长来领导各组完成实验。组长在本组的实验过程中主要起一个牵头的作用,并组织组内的讨论。组长的推举可以采取学员毛遂自荐的方式,如果学员反应不积极,也可以有意识的指定学员中技术水平较好的来担任组长,以保证实验的顺利进行。在推举出组长之后,还可以引导组长对自己的组员也进行相应的分工。比如说可以让特定的组员负责查看配置与display信
23
共分享92篇相关文档