使用xmodem方式恢復IOS

XMODEM協議是一種使用撥號調制解調器的個人計算機通信中廣泛使用的異步文件運輸協議。

這種協議以128字節塊的形式傳輸數據,並且每個塊都使用一個校驗和過程來進行錯誤檢測。如果接收方關於一個塊的校驗和與它在發送方的校驗和相同時,接收方就向發送方發送一個認可字節。然而,這種對每個塊都進行認可的策略將導致低性能,特別是具有很長傳播延遲的衛星連接的情況時,問題更加嚴重。

使用循環冗餘校驗的與XMODEM相應的一種協議稱爲XMODEM-CRC。還有一種是XMODEM-1K,它以1024字節一塊來傳輸數據。

ZMODEM是最有效的一個XMODEM版本,它不需要對每個塊都進行認可。事實上,它只是簡單地要求對損壞的塊進行重發。ZMODEM對按塊收費的分組交換網絡是非常有用的。不需要認可回送分組在很大程度上減少了通信量。

YMODEM也是一種XMODEM的實現。它包括XMODEM-1K的所有特徵,另外在一次單一會話期間爲發送一組文件,增加了批處理文件傳輸模式。

相對於YMODEM,ZMODEM等其他文件傳送協議來說,XMODEM協議實現簡單,適合於那些存儲器有限的場合。

使用XmodemTFTP的主要區別就在於傳輸的途徑不一樣,TFTPIOS傳輸必須經過以太網線,而Xmodem則是通過控制線來傳輸的,所以使用Xmodem恢復IOS就不必進行PC機和路由器的網線連接,也不需要IP地址方面的設置,省了不少事。但是Xmodem是通過控制線(console)來進行傳輸的,一般和cisco路由器相連的控制線波特率是9600,就是9.6/s,速度很慢。幸好,我們可以在路由器上更改波特率,最大是115200,115.2K/S,雖然相對100M/s的快速以太網相差甚遠,但是比9.6/S的蝸牛速度爽多了吧,所以先進行默認波特率的修改,可以用confreg命令來修改,如下:

rommon1>confreg

ConfigurationSummary

enabledare:

loadromafternetbootfails

consolebaud:9600

boot:imagespecifiedbythebootsystemcommands

ordefaultto:cisco2-C3600

doyouwishtochangetheconfiguration?y/n[n]:y

enable"diagnosticmode"?y/n[n]:

***pressing"Enter"acceptsthedefaultvaluebetweenthebrackets***

enable"usenetinIPbcastaddress"?y/n[n]:

disable"loadromafternetbootfails"?y/n[n]:

enable"useallzerobroadcast"?y/n[n]:

enable"break/aborthaseffect"?y/n[n]:

enable"ignoresystemconfiginfo"?y/n[n]:

changeconsolebaudrate?y/n[n]:y

enterrate:0=9600,1=4800,2=1200,3=2400

4=19200,5=38400,6=57600,7=115200[7]:7

changethebootcharacteristics?y/n[n]:

ConfigurationSummary

enabledare:

loadromafternetbootfails

consolebaud:115200

boot:imagespecifiedbythebootsystemcommands

ordefaultto:cisco2-C3600

doyouwishtochangetheconfiguration?y/n[n]:

Youmustresetorpowercyclefornewconfigtotakeeffect

改完了,你需要重啓一下,讓配置生效,注意,你的調試機器上的超級終端的連接波特率也要改爲115200,不然你重起後你可能看見的就是一堆亂碼#^¥&%×^×^,呵呵。

接下就是用xmodem命令來做了,xmodem的使用方法如下:

rommon1>xmodem[-cyrx]

選項功能

-c傳輸過程中使用CRC-16檢查.缺省的是8-bitCRC

-yymodem-batch協議使用CRC-16錯誤檢查

-r讓軟件傳到DRAM中,缺省的是Flash

注意:設備重啓後,DRAM中的文件會丟失,你還要進行一次恢復IOS

-x讓軟件傳到DRAM,但是不執行,除非使用launch命令

-f擦除Flash裏全部的文件

注意:這個選項是1600系列路由器指定的;在其他平臺上是缺省項

Examples:

rommon1>xmodem-cfc1600-nsy-mz_112-15a_P

或者

rommon1>xmodem-yc2500-js-mz_120-14

讓我們stepbystep來試試:

1.來執行xmodem命令:rommon1>xmodemc1600-nsy-mz_112-15a_P

2.等待ROMmon提示信息,類似下面:

Readytoreceivefilec1600-nsy-mz_112-15a_P...

3ok,可以進行文件傳輸了,在超級終端界面,點擊鼠標右鍵,選擇發送文件,彈出的對話框,上面選擇你要傳送到路由器內的新的IOS,下面選擇Xmodem協議。然後點擊發送,就可以了。

4.接下來就是文件傳輸的界面了,耐心些等待吧……

5.當顯示:DownloadComplete!信息時,就差不多萬事大吉了,不過做爲列行的檢查還是必要的,用命令:dirflash:看看文件是不是已經正確無誤的傳過去了。

rommon1>dirflash:

FilesizeChecksumFilename

2179331bytes(0x214103)0x7b95c1600-nsy-mz_112-15a_p

6.使用reset或者bootflash:[filename]命令,如下顯示:

rommon1>reset

或者

rommon1>bootflash:c1600-nsy-mz_112-15a_P

重起路由器,進入正常的配置界面,IOS恢復就成功了,你可以檢查一些看看:showversionshowflash等。但是別忘了,剛纔你把默認的控制線波特率9600改爲115200了,要記得進入console配置線程下修改回來:

Router#confter

Router(config)#lineconsole0

Router(config-line)#speed9600

參考文檔地址:

http://www.cisco.com/en/US/products/hw/routers/ps259/products_tech_note09186a008015bfac.shtml

http://baike.baidu.com/link?url=1NVk-fQm3gMeaVkM2soQH2k_bLRG6slvC4QAnwYqPr-PFFJJe6kGmX76M9Tg25EG1Ko6lfUV3ZG5rkV1VNlk3a

http://blog.csdn.net/djsl6071/article/details/1586970

http://cisco.chinaitlab.com/base/904517.html

歡迎來羣一起交流:166684620

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章