> 1. 前言 配置寄存器是一个16位的虚拟寄存器,用于指定路由器启动的次序、中断参数和设置控制台波特率等。该寄存器的值通常是以十六进制来表示的。 利用配置命令config register可以改变配置寄存器的值。 2. 启动次序 配置寄存器的最后4位,指定的是,路由器在启动的时候必须使用的启动文件所在的位置: R>l 0x0000指定路由器进入ROM监控模式 l 0x0001指定从ROM中启动 l 0x0002-0x000F的值则参照在NVRAM配置文件中命令boot system指定的顺序 如果配置文件中没有boot system命令,路由器会试图用系统Flash存储器中的第一个文件来启动,如果失败,路由器就会试图用TFTP从网络上加载一个缺省文件名的文件(由boot域的值确定,如cisco2-4500),如果还失败,系统就从启动Flash中加载启动。 缺省的文件名是采用单词cisco、启动位的值以及路由器类型或处理器的名称构成。例如某台4500上启动字段设为3,那么缺省的启动文件名就是cisco3-4500。 以MC3819(CPU型号,大多采用MOTOROLA)路由器启动顺序为例,下面就是启动的四个阶段: 1. 系统自举 2. 启动加载(读取配置信息和启动Flash文件系统的最小功能) 3. 启动系统IOS镜像文件 4. 接口初始化/系统重启 3. 配置寄存器 3.1. 各位的含义 表格1 配置寄存器各位的含义 1 配置寄存器各位的含义 寄存器位数 | 十六进制 | 功能描述 | 0-3(启动次序) | 0x0000-0x000F | 启动字段: 0000-停留在引导提示符下(>或rommon >下) 0001-从ROM中引导, | 4 | - | 未使用 | 5 | - | 未使用 | 6 | 0x0040 | 配置系统忽略NVRAM中的配置信息 | 7 | 0x0080 | 启动OEM位 | 8 | 0x0100 | 设置之后,暂停键在系统运行时无法使用;如果没有设置,系统会进入引导监控模式下(rommon>) | 9 | - | | 10 | 0x0400 | 全0的就是广播地址 | 11-12 | 0x0800到0x1800 | 控制台线路速度,默认的就是00即9600bps | 13 | 0x2000 | 如果启动失败,系统以缺省ROM软件启动 | 14 | 0x4000 | - | 15 | 0x8000 | 该设置能够启用诊断消息,并忽略NVRAM的内容 |
例如: 通过show version命令可以看到路由器配置寄存器的值,缺省情况下为0x2102。这四个数字每一个均有着重要的意义。下面从低到高进行一一的介绍。 第一个2,还原成二进制为0010,这一部分为boot field,对路由器IOS的启动起着至关重要的作用,当boot field 的值为2-15中的任何一个时,路由器属于正常启动,当此值为0时,路由器启动后会进入ROMMON模式,此值为1时,路由器进入到RXBOOT模式(2500路由器的FLASH在配置寄存器的值为2102时属性为只读,如果要升级IOS必须把寄存器的值修改为2101) 0,还原成二进制为0000,这四位中,起关键作用的是第三位(即整个寄存器里面的BIT 7),值为0,当路由器启动后会从NVRAM里面的配置文件调到RAM里运行,值为1,路由器启动后会忽略NVRAM的配置(这就是我们在进行PASSWORD RECOVERY时把寄存器的值改为2142的原因 ) 1,还原成二进值为0001,我们来关注BIT8,值为0时,路由器在正常运行模式下CTRL + BREAK无效;值为1,路由器在任何运行模式下只要按下CTRL + BREAK均会立即进入ROMMON模式。 第二个2,还原成二进制为0100,其中BIT13,当值为0时,路由器如果进行网络启动会尝试无穷多次。当值为1时,路由器最多进行5次的网络启动尝试。 寄存器位数 十六进制 功能描述 0-3(启动次序) 0x0000-0x000F 启动字段:0000-停留在引导提示符下(>或rommon >下)0001-从ROM中引导, 4 - 未使用 5 - 未使用 6 0x0040 配置系统忽略NVRAM中的配置信息 7 0x0080 启动OEM位 8 0x0100 设置之后,暂停键在系统运行时无法使用;如果没有设置,系统会进入引导监控模式下(rommon>) 9 - 10 0x0400 全0的就是广播地址 11-12 0x0800到0x1800 控制台线路速度,默认的就是00即9600bps 13 0x2000 如果启动失败,系统以缺省ROM软件启动 14 0x4000 - 15 0x8000 该设置能够启用诊断消息,并忽略NVRAM的内容 典型参数 l 0x2102: 运行过程中中断键被屏蔽,路由器会查看NVRAM中配置的内容以确定启动次序,如果启动失败会采用缺省的ROM软件进行启动。 l 0x2142:恢复密码时候使用。忽略NVRAM配置信息而进入初始配置对话模式中去 3.2. 密码恢复 路由器的密码恢复是将路由器重启、中断再进入ROM监控模式,将设备设置为忽略配置文件,然后再重启,退出初始配置对话模式,配置存储器,然后读出或重新设置密码即可。 根据路由器的处理器不同,需要分两种情况进行处理。 l 适用于精简指令集计算机(RISC): 1. 关掉路由器电源,然后重新打开电源 2. 按下break键或别的键盘组合将路由器置入ROM监控模式。Break键对不同计算机或终端软件是不同的,按键的次序可能是CTRL-D,CTRL-Break等。 3. 在rommon> 提示符下,键入conf reg 0x2142以设置路由器下一次从Flash加载启动的时候不要加载NVRAM中的启动配置信息 4. 键入reset命令,路由器将重启但忽略NVRAM中的配置信息 5. 路由器运行设置对话模式。输入no或按下CTRL-C以跳过初始设置对话模式 6. 在router>提示符下输入enable以进入特权执行模式 7. 使用config memory或者copy startup running命令将启动配置信息拷贝到运行配置中去。不要输入config terminal,否则将覆盖NVRAM中的配置信息 8. show running查看配置信息的内容, 9. 输入config terminal进入配置模式,根据需要改变线路密码或enable密码 10. 这时所有的接口都处于关闭状态,因此在每一个需要使用的接口上no shutdown 11. 输入config reg 0x2102命令设置路由器下次按照正常的方式启动 12. 按下CTRL-Z或End退出配置模式 13. write memory或copy run start命令保存所有所作的更改 14. 重启路由器并验证密码 非RISC: 1. 关掉路由器电源,然后重新打开电源 2. 按下break键或其他键进入ROM 监控模式 3. 在>提示符下,输入o命令以记录配置寄存器的当前值(通常是0x2102或0x0102) 4. 键入o/r 0x2142设置路由器下次启动不要加载NVRAM中的配置信息 5. 键入i重启路由器 6. 以下步骤和RISC处理器相关步骤一样 4. 路由器工作模式 l ROM监控模式:路由器已启动但是没有加载任何IOS,提示符为:>或rommon> l 启动模式:启动Flash里含有最小化IOS启动程序,提示符为:router(boot)> l 用户执行模式:成功加载启动了一份完整的IOS代码,可以显示系统信息、执行基本的测试等。不能查看配置文件和使用debug命令 l 特权执行模式:完全访问的第二级模式。可以现实系统设置和状态信息,可以进入配置模式,可以运行debug命令 l 配置模式:在enable模式中输入config terminal命令进入配置模式。可以对接口、路由器以及线路配置进行设置 l 初始配置对话模式;启动时候,如果路由器没有进行配置(可能是因为路由器是新的或配置文件被write erase命令删除了)的话,进入系统配置对话模式。可以依次进行主机名、执行密码以及enable密码的设置;还可对网络管理接口的IP和子网掩码配置。然后保存到NVRAM中去。 |