当前位置: 首页 > java >正文

路由交换机的 ROMMON 模式

ROMMON(ROM Monitor)是思科路由交换设备中存储在只读存储器(ROM)中的引导程序,设备加电/重置时初始化硬件并引导主操作系统(IOS/IOS XE)。

主要功能

  •  硬件自检与初始化:在系统启动阶段,ROMMON 固件负责对处理器、内存与关键外设进行自检与初始化,为操作系统加载做好准备。
  • 镜像引导管理:通过配置寄存器,ROMMON 定位 IOS 映像并加载,支持手动或自动引导指定映像。当路由交换设备无法正常引导 IOS(例如映像丢失或损坏),设备将进入 ROMMON 模式,管理员可在该模式下手动恢复系统。 

使用场景

  1. 镜像丢失或损坏:设备检测不到有效的系统镜像会自动进入 ROMMON 模式,提示 rommon>,需手动指定 TFTP 或本地闪存中的映像进行恢复。
  2. 密码恢复:在忘记设备特权密码时,可利用 ROMMON 重置配置寄存器,跳过启动配置修改密码。
  3. 升级或回滚:在需要升级或回滚 ROMMON 固件版本时,可下载新版 ROMMON 并通过 ROMMON 命令完成写入与重启过程,以获取新功能或修复硬件兼容性问题。

设备上多个 ROMMON

在 CRS 上,ROMMON 是一段用于验证并加载 MBI 镜像的代码,或从此环境中执行 TurboBoot 安装的模块。当系统或某个模块启动时,ROMMON 会将本地的 MBI 镜像版本与当前活动 RP 上的版本进行比对:

  • 如果本地 MBI 与活动 RP 上的版本一致,则直接启动本地 MBI;
  • 否则,它会通过 TFTP 从活动 RP 下载最新的 MBI 镜像。

每个带有 CPU 的 CRS 模块(MSC-B、FP-40、RP、PRP 等)都在 SPI 闪存上保留两份 ROM Monitor 镜像,称作 ROMMON A 和 ROMMON B,版本号格式为 MAJOR_V.MINOR_V

  1. ROMMON A 初始化: 模块启动时总是首先运行 ROMMON A,然后由它检查与 ROMMON B 的兼容性(在自身的内存卡上检查必要信息,并加载额外的 monlib 指令集以支持高级功能。
  2. 兼容性检查:若 ROMMON A 与 ROMMON B 版本兼容,则移交控制至 ROMMON B;否则整个过程停留在 ROMMON A,用于故障诊断或回退(主版本号不同则不兼容)。
  3. ROMMON B 引导:ROMMON B 加载并启动主操作系统 Cisco IOS XR。 

*自 ROMMON A 版本 1.52 起,引入了对 FAT32 分区的 Split Boot 支持,通过在 ROMMON A 中加载专用的 monlib 指令集来实现;而低于 1.52 的版本则不识别 FAT32 磁盘,只能使用 FAT16。若 ROMMON A ≥ 1.52,则无需升级即可支持 FAT32;否则,必须先升级 ROMMON A,以避免启动时卡在 ROMMON A 而无法移交给 ROMMON B 的情况。

所部署的 IOS-XR 版本对 ROMMON 版本也有最低要求。

最后,好文推荐:

『无题』 » Blog Archive » Upgrade XR for ASR9k/CRS/GSR by TURBOBOOT

http://www.xdnf.cn/news/4617.html

相关文章:

  • 鸿蒙 使用动画 简单使用
  • 学习黑客Linux 系统状态管理
  • 【Python】算法笔记
  • C++ 线程池:原理、实现与高级实现
  • 电商双11美妆数据分析(2)
  • 【anylogic_04】地铁站的人流仿真
  • 易境通海外仓系统:如何高效管理尾程派送订单?
  • 1:点云处理—三种显示方法(自建点云)
  • 这些单词有什么内在联系吗?
  • Linux 内核学习(6) --- Linux 内核基础知识
  • 第18篇:Linux设备驱动程序入门<五>
  • 股票基础知识 | 投资理财(1)【未完待续】
  • 【PhysUnits】2 Scalar<T> 标量元组结构体(scalar/mod.rs)
  • leetcode刷题日记——随机链表的复制
  • 应急响应靶场web3:知攻善防实验室
  • 使用英伟达 Riva 和 OpenAI 构建 AI 聊天机器人
  • 普通IT的股票交易成长史--20250507晚复盘
  • J2 WebScarab 安装指南详细步骤与配置方法
  • 数据报(Datagram)与虚电路(Virtual Circuit)的区别
  • SQL Server 存储过程开发三层结构规范
  • 生物化学笔记:神经生物学概论12 大脑全景图 知觉、行为和语言 注意力
  • vue3的页面跳转方法汇总(路由跳转,组件跳转)
  • 微信小程序开发,登录注册实现
  • ​​Dongle​​(中文常称“加密狗”或“适配器”)
  • 智慧医疗时代下的医疗设备智能控费系统解决方案
  • 【C++】C++中的类型转换
  • GoFrame框架下优雅使用Redis:从入门到实战的最佳实践
  • docker搭建DeepSeek+Dify构建个人知识库
  • 在 Ubuntu 系统中,挂起(Suspend)和休眠(Hibernate)
  • 如何做界面自动化工具选择?