设为首页 收藏本站
查看: 1718|回复: 0

[经验分享] Cisco ROMMON状态下,路由器IOS的恢复

[复制链接]

尚未签到

发表于 2018-7-21 14:21:30 | 显示全部楼层 |阅读模式
  不小心把IOS删掉或者升级IOS失败,重起后进入ROMMON(ROMMON状态是ROM MONITOR的缩写)状态,是比较常见的事,对一个新手而言,前者的可能要大些。两者都可能使路由器进入ROMMON状态,不能进行正常的路由转发功能和软件配置,在这种模式下,原IOS中的大部分命令都无法使用。那怎么办呢?根据Cisco网站的资料,我翻译整理了两种常用的方法:
  1.使用TFTP恢复IOS;
  2.使用Xmodem恢复IOS。不同的路由器的命令有些不一样,这里以2600和3600系列路由为例,但是思路应该是差不多的,下面分开讲一下这两种方法:
  在进行恢复之前,可以先看一下路由器的Flash里文件,用命令:dir flash:;注意命令中flash后面跟冒号(:),执行命令后会显示flash现存的IOS大小和文件名,如下面:1. rommon 1 > dir flash:

  File>  2179331 bytes (0x214103) 0x7b95 c1600-nsy-mz_112-15a_p

  如果File name和File>  一、 使用TFTP恢复IOS
  使用交叉的网线连接你的路由器以太口和装有TFTP Server软件的PC机,在PC机上启动TFTP Server软件,并把新的IOS文件放在TFTP server所在目录的根目录下,如:你的TFTP Server软件在机器装的是Cisco TFTP Server目录,那么就把新的IOS文件放在Cisco TFTP Server目录下就可以了。用控制线将调试机器与路由器连接起来。(一定要与第一个以太口)
  接下来的事就是在路由器进行操作了,在路由器上首先要设置一下ROMMON状态的环境变量,注意所有的环境变量都是大小写敏感的,一定要注意了!往往出错就是因为这个原因。具体下面设置如下:
  打开机器的超级终端工具,连接上ROUTER,此时窗口中出现的命令行提示符为: ROMMON 1 > (其中"1"代表命令行的行数)。在提示符后输入命令:
  ROMMON 1 >IP_ADDRESS= ROUTER的IP地址(要和TFTP软件所在的机器在同一网段内)
  ROMMON 2 >IP_SUBNET_MASK= ROUTER的子网掩码
  ROMMON 3 >DEFAUT_GATEWAY= 默认网关地址 (可以没有,也可以是TFTP服务器)
  ROMMON 4 >TFTP_SERVER= TFTP 服务器IP地址
  ROMMON 5 >TFTP_FILE= IOS文件名(只给出文件名,不需要路径)
  ROMMON 6 >tftpdnld 回车
  注意:前面的几条命令必须使用大写,而最后的tftpdnld则要用小写。 设置完后要用sync命令保存环境变量到NVRAM,用set命令进行察看设置。
  在tftpdnld命令执行后,只要根据提示选择,就可完成文件的传输。当文件传输完后,将自动回到命令行下,输入reset重启ROUTER,重启后就又回到了熟悉的IOS模式下 甚至连以前配置的信息都不会丢失。
  下面是具体的例子:
  Example
  rommon 16 > IP_ADDRESS=172.16.0.1
  rommon 17 > IP_SUBNET_MASK=255.255.255.0
  rommon 18 > DEFAULT_GATEWAY=172.16.0.2
  rommon 19 > TFTP_SERVER=172.16.0.2
  rommon 20 > TFTP_FILE=c2600-is-mz.113-2.0.3.Q
  rommon 21 > tftpdnld
  IP_ADDRESS: 172.16.0.1
  IP_SUBNET_MASK: 255.255.255.0
  DEFAULT_GATEWAY: 172.16.0.2
  TFTP_SERVER: 172.16.0.2
  TFTP_FILE: c2600-is-mz.113-2.0.3.Q
  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-is-mz.113-2.0.3.Q from 172.16.0.2 !!!!!.!!!!!!!!!!!!!!!!!!!.!!
  File reception completed.
  Copying file c2600-is-mz.113-2.0.3.Q to flash.
  Erasing flash at 0x607c0000
  program flash location 0x60440000
  rommon 22 >
  二、 使用Xmodem恢复IOS
  使用Xmodem和TFTP的主要区别就在于传输的途径不一样,TFTP的IOS传输必须经过以太网线,而Xmodem则是通过控制线来传输的,所以使用 Xmodem恢复IOS就不必进行PC机和路由器的网线连接,也不需要IP地址方面的设置,省了不少事。但是Xmodem是通过控制线(console)来进行传输的,一般和cisco路由器相连的控制线波特率是9600,就是9.6k/s,速度很慢传输一个几M大小的文件需要比较长的时间,需要耐心的等待。等待总是让人很焦虑,我就是一个不喜欢等待的人。幸好,还可以在路由器上更改波特率,最大是115200,即115.2K/S,虽然相对100M/s 的快速以太网相差甚远,但是比9.6k/S的蜗牛速度爽多了吧,所以先进行默认波特率的修改,可以用confreg命令来修改,如下:
  rommon 2 > confreg
  Configuration Summary
  enabled are:
  load rom after netboot fails
  console baud: 9600
  boot: image specified by the boot system commands
  or default to: cisco2-C3600
  do you wish to change the configuration? y/n [n]: y
  enable "diagnostic mode"? y/n [n]: !--- pressing "Enter" accepts the
  !--- default (value between the brackets)
  enable "use net in IP bcast address"? y/n [n]:
  disable "load rom after netboot fails"? y/n [n]:
  enable "use all zero broadcast"? y/n [n]:
  enable "break/abort has effect"? y/n [n]:
  enable "ignore system config info"? y/n [n]:
  change console baud rate? y/n [n]: y
  enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400
  4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [7]: 7
  change the boot characteristics? y/n [n]:
  Configuration Summary
  enabled are:
  load rom after netboot fails
  console baud: 115200
  boot: image specified by the boot system commands
  or default to: cisco2-C3600
  do you wish to change the configuration? y/n [n]:
  You must reset or power cycle for new config to take effect
  改完了,你需要重起一下,让配置生效,注意,你的调试机器上的超级终端的连接波特率也要改为115200,不然你重起后你可能看见的就是一堆乱码#^¥&%×^×^,呵呵。
  接下就是用xmodem命令来做了,xmodem的使用方法如下:
  rommon 1 > xmodem [-cyrx] <destination filename>
  选项
  功能
  -c
  传输过程中使用 CRC-16 检查. 缺省的是 8-bit CRC.
  -y
  ymodem-batch 协议使用CRC-16错误检查
  -r
  让软件传到DRAM中,缺省的是Flash中。
  注意: 不推荐!重起后,DRAM的文件会丢失,你还要进行一次恢复IOS.
  -x
  让软件传到DRAM中,但是不执行,除非使用launch 命令。
  注意: 不推荐!同上一个参数-r
  -f
  擦除Flash里全部的文件
  这个选项是1600系列路由器指定的;在其他平台上是缺省项
  Examples:
  rommon 1 > xmodem -cf c1600-nsy-mz_112-15a_P
  rommon 1 > xmodem -y c2500-js-mz_120-14
  让我们step by step来试试:
  1. 来执行xmodem命令:rommon 1 > xmodem c1600-nsy-mz_112-15a_P
  c1600-nsy-mz_112-15a_P是我们打算在路由器中保存的文件名,你可以起自己想要的名字,不过最好是按原文件的名字来。
  2.等待ROMmon 提示信息,类似下面:
  Ready to receive file c1600-nsy-mz_112-15a_P ...
  3.ok,可以进行文件传输了,在超级终端界面,点击鼠标右键,选择发送文件,弹出的对话框,上面选择你要传送到路由器内的新的IOS,下面选择Xmodem协议。然后点击发送,就可以了。
  4.接下来就是文件传输的界面了,耐心些等待吧......
  5.当显示:Download Complete!信息时,就差不多万事大吉了,不过做为列行的检查还是必要的,用命令:dir flash: 看看文件是不是已经正确无误的传过去了。
  rommon 1 > dir flash:

  File>  2179331 bytes (0x214103) 0x7b95 c1600-nsy-mz_112-15a_p
  6.哈哈,到了最后了:使用 reset或者 bootflash:[filename] 命令,如下显示:
  rommon 1 > reset或者rommon 1 > boot flash:c1600-nsy-mz_112-15a_P
  重起路由器,ok了吗?如果已经进入正常的界面了,那就恭喜你了,IOS恢复就成功了,你可以检查一些看看:show version;show flash等。但是别忘了,刚才你把默认的控制线波特率9600改为115200了,现在要做就是改回来,命令:config t;config-register 0x2102;end。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-539571-1-1.html 上篇帖子: ***实验1--实验一 Cisco IOS Site-to-Site Pre-share Key *** 下篇帖子: 如何正确进行Cisco交换机配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表