解析常见排故案例 轻松应对路由故障
路由故障在局域网中比较普遍,而且其影响的面也非常大,往往会导致大面积或者全局性的网络瘫痪。对管理员来说,掌握路由排错的思路和技巧是非常必要的。本文将和大家分享三例典型的不同类型路由排错案例,希望对大家有所启发。
案例1 不堪重负,路由器外网口关闭
- 01
网络环境 某单位使用的是Cisco路由器,租用电信30MB做本地接入和l0MB教育网双线路上网,两年来网络运行稳定,路由器也没有发生故障。随着网络用户数量增加,原来电信30MB已不能满足需要,于是决定租用电信1OOMB来解决带宽问题。电信采用光纤接入到单位机房后,使用百兆光电转换器经转换后通过双绞线接到路由器外网口上面,该路由器使用是千兆电口作为外网口,由于光电转换器只有1O0MB,该端口连接后速度显示100MB。
- 02
外网端口流量为零 经过几天的运行,管理员发现每天当路由器外网口流量超过50Mbps/s后,该端口就会 出现“Receive Errors” ,流量超大,错误信息很多。突然有一天,出现外网不能上了, Telnet到路由器上面,发现电信对应的外网口没有流量,显示状态为UP,路由器上其他端口工作正常。第一反映是电信的那边出现问题了,是电话通知电信那边查检一下,对方很 快回应说没有什么问题,并询问是否光电转换器死机了。 于是管理员将光电转换器重启后,故障依然。没有办法,只好将路由器重启一下,故障排除。谁知,过了不到一个小时,故障又重现。Telnet到路由器后将该外网口执行shutdown和undo shutdown后,故障排除。谁知,将所有有关病毒的安全策略应用到该端口,将tcp mss修改为 2o48(厂商默认1460),故障依然出现。
- 03
故障分析 管理员发现在故障发生时,CPU显示 23%,Memory为33%,不算太高,关键是其他接口都正常工作,看样子问题还是出现在这个端口上面。可这个端口已用了两年了,升级扩容以前没有出现端口不能正常通讯的情况,端口硬件应该是有什么问题。通过网管软件对端口关闭前的流量检测,发现该端口关闭前有很大的流量通过(超过 80Mbps/s) ,显示端口的错误信息也比较多。通过分析得知应该是网络流量太大,利用率过高所致。流量超过80%后,造成端口不能正常。如果该端口能工作千兆模式下,100MB带宽仅利用该端口10%,这样端口可以轻松处理。
- 04
解决方案 在找到症结后,推荐的解决方案是购买千兆光电转换器代替原来的百兆设备,而且价格也比较便宜。但为了保证网络运行的稳定性,该单位决定直接购买一个千兆光口路由模块,直接利用光纤进行通讯,减少网络延时。电信则通过端口限速来控制保证提供百兆带宽。通过一段时间运行,发现该端口除了有少量错误信息外,再没有出现过端口无故关闭情况。
案例2 路由器为何发包失败
- 01
现象描述 某单位的网络配置完成后,管理员在测试网络连通性时发现:从PC机(6.159.245.195) 向目标网络(6.159.245.65/26)发送 Ping时,路由器R1可以成功转发数据包,然而从R1向目标网络(6.159.245.65/26) 发送ping时,出现ping失败。
- 02
排错过程 首先,跟踪ping所经过的路径。检查R1的路由表,目标地址6.159.245.65可以与路由表中0.0.0.0/0相匹配。检查R2、R3、R4的路由表,均可以发现与目标地址匹配的路由表项。 然后,跟踪ICMP回应应答数据包所经过的路径。为完成这一步骤,要明确回应数据包的源地址,PC发送ping时,回应应答数据包的目标地址就是 6.159.245.195。而路由器R1发送ping时,回应应答数据包的目标地址就是71.170.0.146。对照R4的路由表,发现与 6.159.245.195匹配的路由表项,而未发现与目标地址71.170.0.146相匹配的路由表项。看来,ICMP的回应应答数据包在R4处理时被丢弃了,所以从R1向目标网络R4(6.159.245.65/26) 发送ping时,出现pmg失败。 解决办法是:在路由器R4上增加一条指向71.170.0.144/30的静态路由,下一跳的地址为71.170.0.214。完成后,在R1向R4发送ping时,发现一切正常了。 此类网络故障尽管不会影响网络的正常通信,排除的过程也很简单,但在网络故障的 分析与排除时,我们要考虑完整的通信过程。
案例3 艰难的Cisco路由器IOS升级之旅
- 01
超级终端登录出现乱码 从机房的仓库里拿出路由器,通电。通过Console口连上去,发现超级屏幕出现了一些 乱码。会不会是Consol口坏了?分析认为Cisco设备如果出现Console口坏了,一般会在超级终端屏幕上不断输出很多的乱码。但是这回出现的却是输入回车键后,才在屏幕上出现 乱码,可能是每秒传输速率不对。管理员将默认值9600更换为l15200。路由器启动成功。路由器启动完后,用show run确实发现Console的速率为l15200。
- 02
内存不够升级失败 要升级的这台Cisco2621路由器带有VPN的功能。原来的IOS版本为C2600-i-mz.122-8.T4.bin。从网上得知 Cisco 2621只有K8、K9系列的IOS才能支持VPN。于是管理员从网上下载新的IOS c2600-ik9o3s3- mz.123-22.bin,大小为15MB。升级过程如下: (1).配置路由器Interfast 0/0的IP地址,先用“copy flash:tftp”把原来的IOS备份出来,并通过“copy tftpd flash” 命令上传。 (2).重新启动路由器,发现如下的提示错误,大意是没有足够的内存运行IOS: Error:memory requirements exceed available memory Memory required:0x0284A0BC 在Cisco官方网上查询,发现c2600-ik9o3s3-mz.123-22.bin这个10s镜像要求路由器的内存为 64MB,Flash为 16MB。从上面的启动信息可以看出,这台路由器的内存为32MB,当然启动不起来了。后来在网上购买了一条l28MB的内存换上去,加大内存后,启动路由器成功。
- 03
在ROM模式下通过TFTP上传lOS效验失败 由于路由器IOS升级失败,所以想恢复原来的IOS。Cisco IOS升级失败后,恢复IOS的方式有两种:FTP和Xmodem。TFTP的传输速度快一些,Xmodem的传输速度比较慢。在R0M模式下,用TFTP上传IOS,过程如下: (1).在interfast 0/0配置IP地址,配置完后用set命令查看。默认情况下,在R0M模式 下配置的IP地址是在interfast 0/0下的,所配置的IP地址应该要与TFTP服务器在同一个网段内。 (2).用tftpdnld方式下载,TFTP ServerMg开始时用Cisco的TFTP,但传输一半就超时。用3Cdaemon传输完后,发现如下的警告: TFTP flash C0PY:Warning,ChecksSum comparison failed. 重启路由器,路由器无法启动,提示IOS效验错误。原想可能是IOS下载时出现错误,但是重新下载了c2600-ipbase-mz.123-6c.bin还是不行,看来不是IOS的问题。后来更换了网线TFTP软件还是不行。 解决办法:用Xmodem来传。为了使传输速度快点,我们应该修改Xmodem的传输速度为ll5200。IOS通过Xmodem传输完后,重启路由器,路由器已经可启动。
- 04
经验总结 (1).在用TFTP上传IOS时,如果提示效验错误,就应该考虑采用Xmodem方式上传。 (2).TFTP服务器的IP的地址要和路由器的以太网口在一个网段上。 (3).在用Xmodem上传IOS时,最好采用Windows自带的超级终端。 (4).TFTP (Trivial File Transfer Protoco1)文件传输协议最大就支持传输32MB的文件。如果IOS大于32MB时,可以考虑采用第三方的TFTP软件,如3Cdaemon。还有一种办法就是可以采用FTP传输命令。