对于许多初学者来说,Cisco路由器的ROM Monitor常常令人感到陌生甚至望而生畏,原因很简单,一是我们并不经常用到该模式,对其相关操作不熟悉;二是在ROM Monitor模式下的操作失误,往往会对路由器造成致命的伤害(比如破坏flash中的IOS文件,导致系统崩溃),以至于很多人对它束手束脚,望而却步。

    其实,ROM Monitor并不复杂,它只是Cisco路由器的一个低级操作系统,通常用于测试和排错,我们只需花费很少的时间,就可以轻松搞定。下面笔者就以网管员在实际工作中最常遇到的两种需要使用ROM Monitor的情况为例,做一个说明。
    情景一:路由器的口令恢复
    为了防止别人知道路由器的口令(特别是特权口令),威胁本地网络安全,许多管理员将口令设得特别复杂。但由于路由器的配置完成后,我们就很少再去操作路由器,这样过了一段时间后,我们因为某种需要需对路由器进行配置时,就可能因忘记口令而无法进行。
    这时候,我们只需要一台PC机(操作系统为Windows系列),一条Console电缆及相应的接口转换器,然后按照下面的操作,就可以轻松搞定。
    1. 设置PC机的超级终端,使我们能够使用路由器的Console口直接对路由器进行操作(因其过程非常简单,笔者为节省篇幅,将其省略)。
    2.启动路由器,并在前60秒内按下Break或Ctrl+Break键,进入路由器的ROM Monitor模式。
    3.下面以初学者最常接触到的Cisco 2600系列路由器为例,做一些简要描述。
    (按下Ctrl+Break键,进入ROM Monitor模式)
    rommon 2 > confreg 0x2142
    使用该命令修改路由器的配置寄存器的值,使路由器在下次重启时不要加载启动配置,从而跳过用户口令及特权口令的验证,进入特权模式。
    You must reset or power cycle for new config to take effect
    rommon 3 > reset
    使用该命令重新启动路由器,重启后,系统提示:
    Would you like to enter the initial configuration dialog? [yes/no]: n
    选择no直接进入CLI模式
    Press RETURN to get started!
    按回车键继续下一步。
    Router>en
    Router#show version
    此时使用show version命令查看配置寄存器的值为0x2142.
    Router#copy star run
    使用该命令加载启动配置,然后设置新口令。若没有该步操作,会导致在下次重启后,新口令设置失败。
    Router#conf t
    Router(config)#config-register 0x2102
    路由器下次重启后将加载启动配置,需使用新口令进行验证。
    Router(config)#end
    Router#copy run star
    保存运行配置到启动配置
    Destination filename [startup-config]?
    Building configuration……
    [OK]
    提示:Cisco 2500、2000、3000、4000和7000系列路由器的口令恢复与上述操作基本相同,其主要差别为修改配置寄存器的命令为“o/r 0x2142”,以及重启命令为“i”,其他系列的路由器与2600系列基本一致。
    情景二:路由器flash中IOS文件的升级或损坏后的恢复
    相比较而言,第二种情况更为少见,但也更为严重,它常常发生在对路由器IOS版本升级操作失误或其他软硬件故障原因导致路由器系统崩溃无法进行工作,致使整个网络的瘫痪。
    此时,我们常常需要在路由器的ROM Monitor模式下将其修复。
    下面就以笔者的一个学生遇到的问题为例,做一下探讨。该学生在对一台Cisco 2600路由器IOS进行升级时,出现如下故障:
    System Bootstrap, Version 11.3(2)XA4, RELEASE SOFTWARE (fc1)
    Copyright (c) 1999 by Cisco Systems, Inc.
    TAC:Home:SW:IOS:Specials for info
    C2600 platform with 32768 Kbytes of main memory
    loadprog:bad file magic number:0x0
    boot:cannot load "flash:"
    然后,路由器引导程序在重复上述过程,失败后,进入ROM Monitor模式。
    rommon 1 >boot
    使用该命令,使路由器重新加载flash中的IOS文件,失败。