本文链接地址:http://www.guanwei.org/post/Cisconetwork/04/Cisco-router-boot-process.html

版本一:

Cisco 路由器开机后,首先执行一个开机自检过程(Power On Self Test,POST) ,诊断验证 CPU、内存及各个端口是否正常,紧接路由器进入软件初始化过程。如图 1,

图1 路由器启动过程示意图

其步骤如下:
(1) 执行 ROM 中的引导程序加载(Bootstrap Loader) ,它和计算机中的 BIOS 很类似,Bootstrap 会把IOS 装到RAM 中; 
(2) IOS 可以存放在许多地方(FLASH、TFTP 服务器上或 ROM 中) ,路由器寻找 IOS 映像的顺序,取决于配置寄存器的启动域以及其他的设置。配置寄存器(configuration register)是一个 16 位(2 进制)的寄存器,低 4 位就是启动域,不同的值代表从不同的位置查找 IOS,如表 1。

表1  配置寄存器中启动于的值 

配置寄存器的值(16 进制)描述 
0使用ROM 模式
1   自动从 ROM中启动
2-F从 FLASH 或TFTP 服务器启动 

 详细的 IOS 查找过程如图 2 所示。

图2 路由器查找 IOS 的详细流程

(3) 加载 IOS 到RAM 中:如果IOS 是压缩过的,就先解压。 
(4) 在 NVRAM 中查找配置文件,并把配置文件加载到 RAM 中运行。 
(5) 如果在 NVRAM 中没有找到配置文件,就进入 setup 配置模式(也称为配置对话模式) 。 

 

==========================分割线========================

版本二:

要讨论路由器的启动顺序,我们先来看看路由器的硬件组


 我们知道,路由器里有一个叫做IOS的软件,IOS叫做网际操作系统,可以等同的认为它就是路由器的操作系统,像我们常用的XP一样。路由器会使用IOS来完成路由表的生成和维护。

 同样的,作为路由器来讲,也有一个类似于我们PC系统中BIOS一样作用的部分,叫做MiniIOS。MiniIOS可以使我们在路由器的FLASH中不存在IOS时,先引导起来,进入恢复模式,来使用TFPF或X-MODEM等方式去给FLASH中导入IOS文件。所以,路由器的启动过程应该是这样的:

1. 路由器在加电后首先会进行POST。Power On Self Test (上电自检,对硬件进行检测的过程)

2. POST完成后,首先读取ROM里的BootStrap程序进行初步引导。

3. 初步引导完成后,尝试定位并读取完整的IOS镜像文件。在这里,路由器将会首先在FLASH中查找IOS文件,如果找到了IOS文件的话,那么读取IOS文件,引导路由器。

4. 如果在FLASH中没有找到IOS文件的话,那么路由器将会进入BOOT模式,在BOOT模式下可以使用TFTP上的IOS文件。或者使用TFTP/X-MODEM来给路由器的FLASH中传一个IOS文件(一般我们把这个过程叫做灌IOS)。传输完毕后重新启动路由器,路由器就可以正常启动到CLI模式。

5. 当路由器初始化完成IOS文件后,就会开始在NVRAM中查找STARTUP-CONFIG文件,STARTUP-CONFIG叫做启动配置文件。该文件里保存了我们对路由器所做的所有的配置和修改。当路由器找到了这个文件后,路由器就会加载该文件里的所有配置,并且根据配置来学习、生成、维护路由表,并将所有的配置加载到RAM(路由器的内存)里后,进入用户模式,最终完成启动过程。

6. 如果在NVRAM里没有STARTUP-CONFIG文件,则路由器会进入询问配置模式,也就是俗称的问答配置模式,在该模式下所有关于路由器的配置都可以以问答的形式进行配置。不过一般情况下我们基本上是不用这样的模式的。我们一般都会进入CLI(Comman Line Interface)命令行模式,后对路由器进行配置。

09-13 10:18