网管答疑:路由器的操作系统(IOS)越高越好吗?
核心提示:路由器本质上仍然是计算机,所以在选择路由器的IOS的时候,也有这方面的考虑。笔者建议,不要急着升级路由器的IOS。否则的话,给路由器选择比较高的IOS版本,反而会造成路由器的故障,如不断的重新启动等等。在这篇文章中,笔者以自己亲身经历的一个案例来给大家说明这个问题,以免大家走不必要的冤枉路。
我们在选择操作系统的时候,并不是版本越高越好。因为新版本的操作系统,其对硬件的要求比较高。而且还有比较多的漏洞等等。所以在给用户选择操作系统是,一般都不选择版本高的操作系统,而选择相对稳定性高的低版本的操作系统。路由器本质上仍然是计算机,所以在选择路由器的IOS的时候,也有这方面的考虑。笔者建议,不要急着升级路由器的IOS。否则的话,给路由器选择比较高的IOS版本,反而会造成路由器的故障,如不断的重新启动等等。在这篇文章中,笔者以自己亲身经历的一个案例来给大家说明这个问题,以免大家走不必要的冤枉路。
故障重现:
笔者以前在一家企业中做网络管理员的时候,采用的是Cisco 3640的路由器,IOS采用的版本是12.0。后来出来了一个新的12.2的版本,笔者就将其升级为了这个最新的版本。但是升级之后,麻烦就来了。将路由器配置完成之后,路由器会频繁的死机、重启。晚上网络不忙的时候,还好不怎么会重新启动。但是在白天的时候,会重新启动好几次。查看日志发现,基本上每隔一到两个小时就会重新启动一次。重新启动基本上没有规律可循。
由于在版本更新之前,路由器没有这种故障。为此笔者就认为是新的IOS软件有问题。笔者就又重新升级了一次。但是升级过后,问题仍然存在。难道是新版本的IOS软件这台路由器并不支持?去Cisco的官方网站上查询了相关的资料,也没有发现说这个版本的IOS不能够用在这个规格的路由器上。
故障原因分析:
经过一段时间的摸索之后,笔者认为问题可能还是出在软件版本的问题之上。而且因为完上网络不忙的时候,基本上没有死机重新启动的现象。故笔者认为这可能还与网络的负载有一定的关系。重新启动路由器之后,笔者使用show processes命令和show processes memory命令来查看路由器CPU和内存的使用情况。不查不知道,一查吓一跳。路由器运行没有多少时间,笔者就发现内存与CPU两者的使用率居高不下。等到CPU或者内存的使用率达到100%、并且维持一段时间之后,路由器就死机了。然后路由器重新启动。如果周而复始的出现故障。
原因虽然找到了,但是看来除了升级路由器的硬件之外没有其它的解决方法。而升级硬件,如增加路由器的内存,代价又太高。笔者没有办法,只好将路由器的版本降低,又采用了原先的12.0的版本。还好笔者在IOS升级之前做了充分的备份。此时只要利用原先的备份文件恢复即可。使用了旧版本的IOS之后,频繁重新启动的问题就解决了。
总结:路由器并不适合采用新版本的IOS系统。
新版本的IOS,虽然在功能上有了很大的改善。但是其功能上的增加,对于硬件的配置也有更高的要求。由于新版本的IOS占用系统的资源比较多,当网络一繁忙的时候,路由器的CPU或者内存的负载率就可能达到100%。在一规定的时间内,如果其负荷没有降低的话,则路由器就会死机,并重新启动。
其实这根单机的故障非常的类似。当普通的计算机遇到病毒或者木马攻击的时候,其CPU或者内存的使用率就会达到100%。在一段时间内,如果其没有明显改善的话,则这台计算机就会出现死机的情况。笔者升级了IOS版本之后,路由器频繁死机就跟这台单机的情况类似,主要是IOS耗用了过多的CPU或者内存资源而导致的。也就是说,虽然新版本的IOS与这台路由器是兼容的。但是其硬件配置在网络繁忙时还不能够满足IOS运行的需要。此时勉强采用新版本的IOS的话,路由器基本上是在满负荷操作。等到网络流量突然增加的话,就会导致路由器当机。