對(duì)于許多初學(xué)者來(lái)說(shuō),Cisco路由器的ROM Monitor常常令人感到陌生甚至望而生畏,原因很簡(jiǎn)單,一是我們并不經(jīng)常用到該模式,對(duì)其相關(guān)操作不熟悉;二是在ROM Monitor模式下的操作失誤,往往會(huì)對(duì)路由器造成致命的傷害(比如破壞flash中的IOS文件,導(dǎo)致系統(tǒng)崩潰),以至于很多人對(duì)它束手束腳,望而卻步。
其實(shí),ROM Monitor并不復(fù)雜,它只是Cisco路由器的一個(gè)低級(jí)操作系統(tǒng),通常用于測(cè)試和排錯(cuò),我們只需花費(fèi)很少的時(shí)間,就可以輕松搞定。下面筆者就以網(wǎng)管員在實(shí)際工作中最常遇到的兩種需要使用ROM Monitor的情況為例,做一個(gè)說(shuō)明。
情景一:路由器的口令恢復(fù)
為了防止別人知道路由器的口令(特別是特權(quán)口令),威脅本地網(wǎng)絡(luò)安全,許多管理員將口令設(shè)得特別復(fù)雜。但由于路由器的配置完成后,我們就很少再去操作路由器,這樣過(guò)了一段時(shí)間后,我們因?yàn)槟撤N需要需對(duì)路由器進(jìn)行配置時(shí),就可能因忘記口令而無(wú)法進(jìn)行。
這時(shí)候,我們只需要一臺(tái)PC機(jī)(操作系統(tǒng)為Windows系列),一條Console電纜及相應(yīng)的接口轉(zhuǎn)換器,然后按照下面的操作,就可以輕松搞定。
1. 設(shè)置PC機(jī)的超級(jí)終端,使我們能夠使用路由器的Console口直接對(duì)路由器進(jìn)行操作(因其過(guò)程非常簡(jiǎn)單,筆者為節(jié)省篇幅,將其省略)。
2.啟動(dòng)路由器,并在前60秒內(nèi)按下Break或Ctrl+Break鍵,進(jìn)入路由器的ROM Monitor模式。
3.下面以初學(xué)者最常接觸到的Cisco 2600系列路由器為例,做一些簡(jiǎn)要描述。
(按下Ctrl+Break鍵,進(jìn)入ROM Monitor模式)
rommon 2 > confreg 0x2142
使用該命令修改路由器的配置寄存器的值,使路由器在下次重啟時(shí)不要加載啟動(dòng)配置,從而跳過(guò)用戶口令及特權(quán)口令的驗(yàn)證,進(jìn)入特權(quán)模式。
You must reset or power cycle for new config to take effect
rommon 3 > reset
使用該命令重新啟動(dòng)路由器,重啟后,系統(tǒng)提示:
Would you like to enter the initial configuration dialog? [yes/no]: n
選擇no直接進(jìn)入CLI模式
Press RETURN to get started!
按回車鍵繼續(xù)下一步。
Router>en
Router#show version
此時(shí)使用show version命令查看配置寄存器的值為0x2142.
Router#copy star run
使用該命令加載啟動(dòng)配置,然后設(shè)置新口令。若沒(méi)有該步操作,會(huì)導(dǎo)致在下次重啟后,新口令設(shè)置失敗。
Router#conf t
Router(config)#config-register 0x2102
路由器下次重啟后將加載啟動(dòng)配置,需使用新口令進(jìn)行驗(yàn)證。
Router(config)#end
Router#copy run star
保存運(yùn)行配置到啟動(dòng)配置
Destination filename [startup-config]?
Building configuration……
[OK]
提示:Cisco 2500、2000、3000、4000和7000系列路由器的口令恢復(fù)與上述操作基本相同,其主要差別為修改配置寄存器的命令為“o/r 0x2142”,以及重啟命令為“i”,其他系列的路由器與2600系列基本一致。
情景二:路由器flash中IOS文件的升級(jí)或損壞后的恢復(fù)
相比較而言,第二種情況更為少見(jiàn),但也更為嚴(yán)重,它常常發(fā)生在對(duì)路由器IOS版本升級(jí)操作失誤或其他軟硬件故障原因?qū)е侣酚善飨到y(tǒng)崩潰無(wú)法進(jìn)行工作,致使整個(gè)網(wǎng)絡(luò)的癱瘓。
此時(shí),我們常常需要在路由器的ROM Monitor模式下將其修復(fù)。
下面就以筆者的一個(gè)學(xué)生遇到的問(wèn)題為例,做一下探討。該學(xué)生在對(duì)一臺(tái)Cisco 2600路由器的IOS進(jìn)行升級(jí)時(shí),出現(xiàn)如下故障:
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:"
然后,路由器引導(dǎo)程序在重復(fù)上述過(guò)程,失敗后,進(jìn)入ROM Monitor模式。
rommon 1 >boot
使用該命令,使路由器重新加載flash中的IOS文件,失敗。
boot: cannot determine first file name on device "flash:"
在確定故障是由路由器不能確定flash中的IOS文件后,我們需要將IOS文件從TFTP Server中恢復(fù)到路由器的flash中。此時(shí)我們可以通過(guò)兩種方法完成此任務(wù):其一,使用安裝了Cisco TFTP Server的PC機(jī)通過(guò)以太網(wǎng)對(duì)路由器IOS進(jìn)行恢復(fù),其二,在ROM Monitor模式下使用xmodem(一種能使用Console電纜傳輸文件的傳輸協(xié)議)命令對(duì)路由器IOS進(jìn)行恢復(fù)。
在這里,我們優(yōu)先使用第一種方法,其步驟為:
1.將安裝了Cisco TFTP Server的PC機(jī)通過(guò)以太網(wǎng)與路由器的以太網(wǎng)接口相連,運(yùn)行Cisco TFTP Server 程序。
2.使用超級(jí)終端登錄路由器Console口控制臺(tái)(路由器已啟動(dòng),查詢故障時(shí)已登錄),終端屏幕顯示如下:
rommon 2 > set
該命令顯示路由器相關(guān)默認(rèn)設(shè)置PS1=rommon ! >
IP_ADDRESS=192.168.1.1
IP_SUBNET_MASK=255.255.255.0
DEFAULT_GATEWAY=192.168.1.2
TFTP_SERVER=192.168.1.2
TFTP_TIMEOUT=20000
TFTP_RETRY_COUNT=10
TFTP_FILE=/c2600-ik8o3s-mz.122-11.T/
???=1
3.檢查路由器的默認(rèn)設(shè)置,將PC機(jī)的IP地址改為192.168.1.2(我們同樣可以使用命令TFTP_SERVER=192.168.1.x修改該設(shè)置,但要保證路由器的IP、默認(rèn)網(wǎng)關(guān)與PC機(jī)的IP在同一網(wǎng)段),這樣更簡(jiǎn)單。
4.指定要恢復(fù)的IOS文件名,并保證該文件在Cisco TFTP Server根目錄下。
Rommon 3 > TFTP_FILE=/c2600-i-mz.121-3.T.bin
不要忘記加上擴(kuò)展文件名。bin
5.開(kāi)始恢復(fù)IOS文件:
rommon 4 > tftpdnld
執(zhí)行該命令從TFTF Server下載IOS文件到flash,該命令僅適用于Cisco 2600系列路由器。
IP_ADDRESS: 192.168.1.1
IP_SUBNET_MASK: 255.255.255.0
DEFAULT_GATEWAY: 192.168.1.2
TFTP_SERVER: 192.168.1.2
TFTP_FILE: /c2600-i-mz.121-3.T.bin
Invoke this command for disaster recovery only.
WARNING: all existing data in all partitions on flash will be lost!
Do you wish to continue? y/n: [n]: y
Receiving /c2600-i-mz.121-3.T.bin from 192.168.1.2(確認(rèn)后,路由器開(kāi)始下載IOS文件,省略多行。)
File reception completed.
Copying file /c2600-i-mz.121-3.T.bin to flash.
Erasing flash at 0x60fc0000
program flash location 0x60160000
6.重新啟動(dòng)路由器,運(yùn)行新的IOS
rommon 5 > reset
提示:Cisco ROM Monitor模式下還有其他很多不同功能的命令,我們可以使用它們對(duì)路由器進(jìn)行一系列的測(cè)試與排錯(cuò),有關(guān)該模式的詳細(xì)說(shuō)明請(qǐng)?jiān)L問(wèn)Cisco 站點(diǎn):www.Cisco.com,進(jìn)行相關(guān)搜索,搜索關(guān)鍵字:Using the ROM Monitor.