我们现下cisco最为核心的 internetwork operating system:
Cisco 采用的操作系统软件称为 Cisco Internetwork Operating System ()。与计算机上的操作系统一样,Cisco 会管理的硬件和软件资源,包括存储器分配、进程、安全性和文件系统。Cisco IOS 属于多任务操作系统,集成了路由、交换、网际网络及电信等功能。
虽然许多路由器中的 Cisco IOS 看似相同,但实际却是不同类型的 IOS 映像。IOS 映像是一种包含相应路由器完整 IOS
的文件。Cisco 根据路由器型号和 IOS 内部的功能,创建了许多不同类型的 IOS 映像。通常,IOS 内部的功能越多,IOS
映像就越大,因此就需要越多的闪存和 RAM 来存储和加载 IOS。例如,某些功能包括了运行 IPv6 的能力,或者能让路由器执行
NAT(网络地址转换)。
与其它操作系统一样,Cisco IOS 也有自己的用户界面。尽管有些路由器提供图形用户界面 (GUI),但命令行界面 (CLI) 是配置 Cisco 路由器的最常用方法。路由器时,NVRAM
中的 startup-config 文件会复制到 RAM,并存储为 running-config 文件。IOS 接着会执行
running-config 中的配置命令。网络管理员输入的任何更改均存储于 running-config 中,并由 IOS 立即执行。
启动过程
启动过程分为四个主要阶段:
1. 执行 POST
2. 加载 bootstrap 程序
3. 查找并加载 Cisco IOS 软件
4. 查找并加载启动配置文件,或进入设置模式
1. 执行 POST
加电自检 (POST) 几乎是每台计算机启动过程中必经的一个过程。POST 过程用于检测路由器硬件。当路由器加电时,ROM
芯片上的软件便会执行 POST。在这种自检过程中,路由器会通过 ROM 执行诊断,主要针对包括 CPU、RAM 和 NVRAM
在内的几种硬件组件。POST 完成后,路由器将执行 bootstrap 程序。
2. 加载 bootstrap 程序
POST 完成后,bootstrap 程序将从 ROM 复制到 RAM。进入 RAM 后,CPU 会执行 bootstrap 程序中的指令。bootstrap 程序的主要任务是查找 Cisco IOS 并将其加载到 RAM。
注:此时,如果有连接到路由器的控制台,您会看到屏幕上开始出现输出内容。
2. 加载 bootstrap 程序
POST 完成后,bootstrap 程序将从 ROM 复制到 RAM。进入 RAM 后,CPU 会执行 bootstrap 程序中的指令。bootstrap 程序的主要任务是查找 Cisco IOS 并将其加载到 RAM。
注:此时,如果有连接到路由器的控制台,您会看到屏幕上开始出现输出内容。
3. 查找并加载 Cisco IOS
查找 Cisco IOS 软件。IOS 通常存储在闪存中,但也可能存储在其它位置,如 TFTP(简单文件传输协议)服务器上。
如果不能找到完整的 IOS 映像,则会从 ROM 将精简版的 IOS 复制到 RAM 中。这种版本的 IOS 一般用于帮助诊断问题,也可用于将完整版的 IOS 加载到 RAM。
注:TFTP 服务器通常用作 IOS 的备份服务器,但也可充当存储和加载 IOS 的中心点。IOS 管理和 TFTP 服务器的使用将在后续课程讨论。
加载 IOS。有些较早的 Cisco 路由器可直接从闪存运行 IOS,但现今的路由器会将 IOS 复制到 RAM 后由 CPU 执行。
注::一旦 IOS 开始加载,您就可能在映像解压缩过程中看到一串井号 (#)
4. 查找并加载配置文件
查找启动配置文件。IOS 加载后,bootstrap 程序会搜索 NVRAM 中的启动配置文件(也称为 startup-config)。此文件含有先前保存的配置命令以及参数,其中包括:
接口地址
路由信息
口令
网络管理员保存的其它配置
如果启动配置文件 startup-config 位于 NVRAM,则会将其复制到 RAM 作为运行配置文件 running-config。
注:如果 NVRAM 中不存在启动配置文件,则路由器可能会搜索 TFTP 服务器。如果路由器检测到有活动链路连接到已配置路由器,则会通过活动链路发送广播,以搜索配置文件。这种情况会导致路由器暂停,但是您最终会看到如下所示的控制台消息:
%Error opening tftp://255.255.255.255/network-confg (Timed out)
%Error opening tftp://255.255.255.255/cisconet.cfg (Timed out)
执行配置文件。如果在 NVRAM 中找到启动配置文件,则 IOS 会将其加载到 RAM 作为 running-config,并以一次一行的方式执行文件中的命令。running-config 文件包含接口地址,并可启动路由过程以及配置路由器的口令和其它特性。
进入设置模式(可选)。如果不能找到启动配置文件,路由器会提示用户进入设置模式。设置模式包含一系列问题,提示用户一些基本的配置信息。设置模式不适于复杂的路由器配置,网络管理员一般不会使用该模式。
当启动不含启动配置文件的路由器时,您会在 IOS 加载后看到以下问题:
Would you like to enter the initial configuration dialog?[yes/no]:no
本课程不会使用设置模式配置路由器。当提示进入设置模式时,请始终回答 no。如果回答 yes 并进入设置模式,可随时按 Ctrl-C 终止设置过程。
不使用设置模式时,IOS 会创建默认的 running-config。默认 running-config
是基本配置文件,其中包括路由器接口、管理接口以及特定的默认信息。默认 running-config
不包含任何接口地址、路由信息、口令或其它特定配置信息。
检验路由器启动过程
show version 命令有助于检验和排查某些路由器基本硬件组件和软件组件故障。show version 命令会显示路由器当前所运行的 Cisco IOS 软件的版本信息、bootstrap 程序版本信息以及硬件配置信息(包括系统存储器大小)。
show version 命令的输出包括:
IOS 版本Cisco Internetwork Operating System Software
IOS (tm) C2600 Software (C2600-I-M), Version 12.2(28), RELEASE SOFTWARE (fc5)
此处便是 RAM 中的 Cisco IOS 软件版本,也正是路由器所用的软件版本。
ROM Bootstrap 程序
ROM:System Bootstrap, Version 12.1(3r)T2, RELEASE SOFTWARE (fc1)
此处显示了存储于 ROM 存储器的系统 bootstrap 软件(最初用于启动路由器)的版本。
IOS 位置
System image file is "flash:c2600-i-mz.122-28.bin"
此处显示了 boostrap 程序在 Cisco IOS 中加载的位置,以及 IOS 映像的完整文件名。
CPU 和 RAM 大小
cisco 2621 (MPC860) processor (revision 0x200) with 60416K/5120K bytes of memory
此行的第一部分显示的是该路由器的 CPU 类型。此行的最后一部分显示的是 DRAM 的大小。某些系列的路由器(如 2600)使用 DRAM 中的一段作为数据包存储器。数据包存储器用于缓冲数据包。
要确定路由器上的总 DRAM 大小,请将两个数字相加。在本例中,Cisco 2621 路由器有 60,416 KB(千字节)的可用
DRAM用于临时存储 Cisco IOS 和其它系统进程。其余 5,120 KB 专用作数据包存储器。二者相加之和为 65,536K,即总共
64 兆字节 (MB) 的 DRAM。
注:升级 IOS 时,可能需要升级 RAM 大小。
接口
2 FastEthernet/IEEE 802.3 interface(s)
2 Low-speed serial(sync/async) network interface(s)
这一段输出显示的是路由器上的物理接口。在本例中,Cisco 2621 路由器有两个快速以太网接口和两个低速串行接口。
NVRAM 大小
32K bytes of non-volatile configuration memory.
这是路由器上 NVRAM 的大小。NVRAM 用于存储 startup-config 文件。
闪存大小
16384K bytes of processor board System flash (Read/Write)
这是路由器上闪存的大小。闪存用于永久存储 Cisco IOS。
注:升级 IOS 时,可能需要升级闪存大小。
配置寄存器
Configuration register is 0x2102
show version 命令的最后一行显示的是软件配置寄存器的当前配置值(十六进制格式)。如果有括在括号中的第二个值,则该值表示下次重新加载时会使用的配置寄存器值。
配置寄存器有多种用途,例如口令恢复。配置寄存器的出厂默认设置是 0x2102。此值表示路由器会从闪存加载 Cisco IOS 软件映像,从 NVRAM 加载启动配置文件。