故障现象
学校采用两条光纤链路接入Internet,一条是网通的100Mb/S专线,一条是Cernet的2Mb/s DDN。网通采用包月制,而CERNET按照国际流入量计费,所以,绝对不能允许Cernet上有国际流量产生。于是,我们采用了两台CISCO路由器,并分别设置了访问列表和路由策略。CISCO 3750路由器放在CERNET下,使得网络内的服务器只能被访问免费列表 (由CERNET提供)中的IP地址访问,从而避免了高额Internet接入费的发生。CISCO 3640放在网通下,网络内的计算机除非访问CERNET网站,否则,统统被路由到该路由器,并将CERNET地址映射为网通地址。实现Internet访问。
路由器配置完成后,几乎每过一个小时就要重新启动一次路由器,因为路由器跟普通计算机一样也会死机。
诊断过程
刚开始怀疑CISCO 3640路由器时性能较差,于是,将CISCO 3640与性能稍好一些的CISCO 3750作了更换,虽然效果稍好一些,但仍然是频频死机。使用"Show processes"命令和 "Show processes memory"命令查看路由器CPU和内存的使用情况,发现两者均居高不下。于是,网络设计人员建议再为路由器增配32MB内存。但是,CISCO路由器内存的价格实在是太贵,动辄就是几千上万,所以,还是想先在CISCO论坛上发一些帖子,并咨询一下CISCO公司的枝术人员再说。
很快,论坛的帖子有一回应。有一大侠问我,路由器装载的IOS是不是Version 12.2版本,我用"Show versio""命令查了一下,果然不错,系统显示IOS的版本号为"IOS(tm)3600 Software(C3640-I-M),Version 12.2(5d),RELEASE SOFTWARE (fc1)"。然后,大侠告诉我,"嗯,这个问题好办,你把IOS降到12.0.24 IP (GD)就行了。"
依照大侠的指示,备份配置文件和映像文件后,试着将IOS更新为比现有版本更旧的"12.0.24 IP (GD)",然后,重新导入配置文件,呵呵,Internet通了,路由器不死了!
排除心得
其实,路由器也是计算机,也有CPU、内存和操作系统 (IOS),因此,计算机死机的毛病它也同样有。本例中,为什么降低了1OS的版本系统就不死机了呢?原因很简单,高版本的IOS功能更强,占用系统资源也更多。WindowsXP虽然比Windows98功能要强大得多,但也比Windows98需要更高的配置。使用相同配置的计算机,Windows98的运行速度显然要比WindowsXP快得多。为了扩充路由器的功能,以适应更为复杂的网络环境和网络应用,在新版本的IOS中增加了许多一般用户根本用不到的功能,而这些功能的实现都是以占用系统资源为代价的。也就是说,即使不使用这些功能,它们同样会被装载到内存,占用宝贵的系统资源。CISCO 3640和CISCO 3750都属于中低端路由器,硬件配置比较低,CPU只是1OOMHz,内存也只有16MB,系统资源非常有限,再被那些用不到的功能占用了一部分,剩余的那点儿家底就经不起折腾了。降低IOS版本,就好像将WindowsXP改成Windows98,系统本身占用的资源少了,可用的资源多了,也就能干更多的活儿了。看来,什么都一样,不能盲目追新,PII 300就装WindowsXP,累也能把计算机累死,更不要说完成繁重的工作任务了。应当根据路由器硬件的配置情况,根据工作的实际需要,选择适当的I0S软件版本。求新求高不是目的,网络运行稳定、高效,才是网络管理员的职责所在。