Cisco IOS 系统介绍

Cisco IOS 系统介绍

来源 https://zhuanlan.zhihu.com/p/26093353

 

提起操作系统,现在大家最熟悉的不过智能手机的Android(安卓)、iOS、Windows Phone 8与PC端的Windows、Linux及OS等等操作系统,而网络设备公司生产的数据中心的网络设备也都有着自家的操作系统。网络设备公司通过操作系统可以孵化出多款路由器、交换机及存储设备,操作系统就相当于网络设备公司的软件大平台,公司制造的所有设备都运行着这样的操作系统。这里介绍Cisco的IOS系统。

 

一、Cisco IOS概述

Cisco公司是全球最大的网络设备制造商,占据着全球网络设备市场近70%的份额,也是数据中心建设重要的参与者。Cisco IOS(Cisco 互联网网络操作系统 Internetwork Operating System)是一个为网际互连优化的复杂操作系统,是Cisco后来自己开发的网络操作系统。IOS是一个与硬件分离的软件体系结构,随着网络技术的不断发展,可动态升级以适应不断变化的技术。

Cisco IOS是运行于Cisco路由器和某些Cisco交换机上的操作系统,它是一个专用内核,提供路由选择、交换、网络互联和远程通信功能,使用Cisco IOS命令行界面(CLI)来配置Cisco IOS路由器。

思科路由器IOS软件负责负责包括以下方面的内容: 运行网络协议并提供功能;在设备之间高速传输数据; 控制访问和禁止未授权的网络使用,从而提高安全性;提供可扩展性(以方便网络扩容)和冗余性;提供连接网络资源的可靠性。

 

二、Cisco 内部路由器的组件

* 1、内存:

* Bootstrap:存储在ROM中的微代码,bootstrap用于在初始化阶段启动路由器,它将启动路由器然后装入IOS。

* POST(开机自检):存储在ROM中的微代码,POST用于检测路由器硬件的基本功能并确定哪些接口当前可用。

* Mini IOS(微型IOS):微型IOS是一个在ROM中可以启动接口并将Cisco IOS加载到闪存中的小型IOS,也可以执行其他动作。 用作紧急故障恢复使用。

* Rom Monitor(ROM监控程序):存储在ROM中的微代码,ROM监控程序用于手动测试和故障诊断。

* ROM(只读存储器):用于启动和维护的路由器,存储POST和bootstrap程序,以及微型IOS。

* RAM(随机存取存储器):用于保存数据包的缓冲包,ARP高速缓存、路由表,以及路由器运行所需的软件和数据结构running-config文件存储在RAM中,并且有些路由器也可以从RAM运行IOS

* 2、Flash(闪存):路由器用于保存Cisco IOS。当路由器重新加载时,并不擦除闪存中的内容。它是一种由intel开发的EERPOM(电可擦除只读存储器)。相当于路由器的硬盘。

* 3、NVRAM(非易失性RAM):用于保存路由器和交换机的配置。当路由器或交换机重新加载时并不擦除NVRAM中的内容。NVRAM中未存储IOS,配置寄存器存储在NVRAM中

 

三、Cisco路由器的启动步骤

1、检测路由器硬件

* Power-On Self Test (POST):开机自检,POST检查硬件,以验证设备的所有组件目前是可以运行的。

* 执行引导装入程序,。

2、定位加载 Cisco IOS 软件

* 定位 IOS:

* 加载 IOS:bootstrap程序负责找到每个IOS程序的位置,然后加载该文件

IOS默认的启动顺序是闪存、TFTP服务器,然后是ROM。

3、定位加载启动配置文件或进入配置模式

* 启动程序搜寻配置文件 :IOS软件在NVRAM中查找有效的配置文件,此文件成为startup-config。只有管理员将running-config文件复制到NVRAM中时才产生该文件。

1. 如果NVRAM中存在startup-config,路由器将使用此文件复制到RAM中并调用running-config,路由器使用此文件运行路由器

2. 如果NVRAM中不存在startup-config,路由器将向所有进行载波检测(carrier detect CD)的接口发送广播,查找TFTP主机以便寻找配置。如果没有找到(一般不会找到),路由器将启动setup mode(设置模式)进行配置

配置寄存器:

位于NVRAM中的16位软件寄存器,默认情况下,配置寄存器设置为从闪存加载Cisco IOS,并且从NVRAM查找并加载startup-config文件。

默认设置是0x2102 0x表示后面的数字是十六进制

R1#show version | include reg    查看寄存器的值

Cisco IOS Software, 3600 Software (C3640-IK9O3S-M), Version 12.4(10), RELEASE SOFTWARE (fc1)

Technical Support: Support and Documentation - Cisco Systems

Copyright (c) 1986-2006 by Cisco Systems, Inc.

Compiled Wed 16-Aug-06 04:04 by prod_rel_team

<......>

Configuration register is 0x2102

R1(config)#config-register 0X2102 修改寄存器的值

路由器;操作系统与配置分离

 

很像一台主机,没有KVM(鼠标 键盘 显示器)

1、Console 控制台端口:RJ45-8针的模块化

2、AUX:auxiliaire port 辅助端口

辅助端口可以配置调制解调命令,以便调制解调器链接到路由器。

如果远程路由器出现故障,而你需要对其进行带外配置(out-of-band在网络外进行配置),这项功能让你能够通过拨号连接其辅助端口。

在无法远程telnet的情况下,只能通过console口进行配置,如果人在外地,无法实现远程配置。这时候,可以使用AUX口,连接model,接电话线,远程拨号,连上路由器,进行配置。

3、Telnet: 带内方式,通过网络配置路由器。

ctrl+c 中断配置对话框

笔记本没有公口,USB转RS-232转接线

End-Of-Life 停产

2800系列路由器--Integrated Service Router集成服务路由器

内置了众多服务(如安全)而得名。模块化。

 

交换机没有IOS 导入IOS

1、调整交换机传输速率

Flash_init

Load_helper

set BAUD 115200

2、调整超级终端传输速率

3、传输命令

copy xmodem: flash:IOS名称

如 copy xmodem: flash: c3560-ipservices-mz.122-25.SEC

4、导入IOS

5、最后把计算机的速率调回9600

Line con 0

Speed 9600

 

一:cisco交换机启动过程:

启动加载器是存储在NVRAM中的小程序,并在交换机第一次开机时执行。

①交换机从NVRAM中加载启动加载器软件。

②启动加载器。

③执行低级CPU子系统的POST(开机自检)。

④初始化系统主板上的闪存文件系统。

⑤将默认操作系统软件镜像加载到内存中,并启动交换机。

⑥操作系统使用config.text文件运行,该文件存储在交换机的闪存存储器中。

注:启动加载器还可以在操作系统无法使用的情况下用于访问交换机。启动加载器有一个命令行工具,可用于在操作系统之前访问存储在闪存中的文件。从启动加载器命令行上,可以输入命令来格式化闪存文件系统,重新安装操作系统软件映像,或者在遗失或遗忘口令时进行恢复。

二:cisco路由器启动过程:

①加电后,路由器执行POST(开机自检),POST是存储在ROM中得微代码,检测设备硬件是否可以正常运行。

②bootstrap查找并加载IOS,bootstrap是存储在ROM中得微代码,IOS存储在flash中,默认加载顺序:flash--TFTP--ROM(mini IOS)。

③IOS在NVRAM中查找startup-config,并复制到RAM,并调用running-config,运行路由器。如果NVRAM没有startup-config,发送广播到所有接口上查找TFTP主机查找配置文件,如果没找到,启动setup mode(设置模式)进行配置。

Cisco路由器启动过程详解

*Nov 26 01:50:41.727: %SYS-5-RELOAD: Reload requested by console. Reload Reason: Reload Command.

System Bootstrap, Version 12.4(13r)T, RELEASE SOFTWARE (fc1)

Technical Support: Support and Documentation - Cisco Systems

Copyright (c) 2006 by cisco Systems, Inc.

PLD version 0x10

GIO ASIC version 0x127

c1841 platform with 393216 Kbytes of main memory

Main memory is configured to 64 bit mode with parity disabled

Readonly ROMMON initialized

program load complete, entry point: 0x8000f000, size: 0xcb80

program load complete, entry point: 0x8000f000, size: 0xcb80

program load complete, entry point: 0x8000f000, size: 0x22a4304

Self decompressing the image : ################################################################################################################################################################################## [OK]

有关引导程序POST时的信息,将高速路由器如何加载IOS(默认在闪存中查找IOS,)并且还指出录用油漆的内存(RAM值)

#号表示正在将IOS解压到RAM,解压缩到RAM后,IOS将被加载并运行路由器。

IOMEM set to: 25

0X000021B8 Onboard USB

PMem allocated: 300941312 bytes; IOMem allocated: 101711872 bytes

Restricted Rights Legend

Use, duplication, or disclosure by the Government is

subject to restrictions as set forth in subparagraph

(c) of the Commercial Computer Software - Restricted

Rights clause at FAR sec. 52.227-19 and subparagraph

(c) (1) (ii) of the Rights in Technical Data and Computer

Software clause at DFARS sec. 252.227-7013.

cisco Systems, Inc.

170 West Tasman Drive

San Jose, California 95134-1706

Cisco IOS Software, 1841 Software (C1841-ADVENTERPRISEK9-M), Version 12.4(15)T13, RELEASE SOFTWARE (fc3)

Technical Support: Support and Documentation - Cisco Systems

Copyright (c) 1986-2010 by Cisco Systems, Inc.

Compiled Wed 07-Apr-10 10:21 by prod_rel_team

Image text-base: 0x60086DF4, data-base: 0x62A02FB0

This product contains cryptographic features and is subject to United

States and local country laws governing import, export, transfer and

use. Delivery of Cisco cryptographic products does not imply

third-party authority to import, export, distribute or use encryption.

Importers, exporters, distributors and users are responsible for

compliance with U.S. and local country laws. By using this product you

agree to comply with applicable laws and regulations. If you are unable

to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:

Export Compliance Product Report Application

If you require further assistance please contact us by sending email to

export@cisco.com.

Installed image archive

Cisco 1841 (revision 7.0) with 293888K/99328K bytes of memory. /--内存/二级缓存容量--/

Processor board ID FHK112510RS

2 FastEthernet interfaces

2 Serial(sync/async) interfaces

1 Virtual Private Network (VPN) Module /--内置接口模块--/

DRAM configuration is 64 bits wide with parity disabled.

191K bytes of NVRAM.

62592K bytes of ATA CompactFlash (Read/Write) /--Flash容量--/

--- System Configuration Dialog ---

Would you like to enter the initial configuration dialog? [yes/no]:

输入no或者随时按CTRL+C退出配置模式

路由器的模式

用户EXEC模式:只能执行基本的监视命令

特权EXEC模式:让你能够访问其他所有的路由器命令

全局配置模式:可以执行影响整个系统的命令

具体的配置模式:课执行影响接口/进程的命令

设置模式:交互式配置对话

IOS升级、备份方式

方法:

* TFTP

TFTP(TrivialFile Transfer Protocol)普通文件传输协议最大就支持传输32MB的文件,TFTP的IOS传输必须经过以太网线.

* FTP

* Xmodem

Xmodem是通过控制线来传输的,所以使用Xmodem恢复IOS就不必进行PC机和路由器的网线连接,也不需要IP地址方面的设置,省了不少事。但是Xmodem是通过控制线(console)来进行传输的,一般和cisco路由器相连的控制线波特率是9600,就是9.6k/s,速度很慢传输一个几M大小的文件需要比较长的时间,需要耐心的等待.

模式:

rommon>

]] >

(boot)>

switch:

#

IOS升级备份-TFTP的方式:

把IOS 备份到TFTP服务器前的准备工作:

1. 确认可以访问TFTP服务器。

2. 确认TFTP服务器是否有足够空间来保存IOS 文件。

3. 确定文件的名称和路径。

验证闪存信息,使用show flash 命令,如下:

Router#show flash

System flash directory:

File Length Name/status

1 8121000 c2500-js-l.112-18.bin

把IOS备份到TFTP服务器上,特权模式下使用copy flash tftp命令

案例1:

通过TFTP服务器升级Cisco路由器IOS

设置tftp服务器

升级路由器的ios

备份路由器的ios:

Router# copy flash tftp

IOS升级备份-FTP的方式

把IOS 备份到FTP服务器前的准备工作:

1. 确认可以访问FTP服务器。

2. 确认FTP服务器是否有足够空间来保存IOS 文件。

3. 确定文件的名称和路径。

验证闪存信息,使用show flash 命令,如下:

Router#show flash

System flash directory:

File Length Name/status

1 8121000 c2500-js-l.112-18.bin

路由器上的配置:

Router(config)#ip ftp username <用户名>

Router(config)#ip ftp password <密码>

把IOS备份到FTP服务器上,特权模式下使用copy flash ftp命令

案例2:

通过FTP服务器升级Cisco路由器IOS

1)配置FTP服务器

配置FTP服务器目录

配置用户名、密码

2)在路由器上配置登录FTP用户名、密码

Router(config)# ip ftp username benet

Router(config)# ip ftp password cisco

3)升级路由器的ios

备份路由器的ios:

Router# copy flash ftp

IOS升级备份-Xmodem方式

修改默认波特率,改变传输速率,可以用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]

  选项 功能:

  -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 size Checksum File name

  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。

BANNER旗标

配置旗标:可以给任何试图通过远程登录或拨号连接你的互联网络的人发出安全警告,向任何登录到路由器的人现实你想告诉他的信息。

4种类型的旗标:

* EXEC进程创建旗标(exec process creation banner):

* 入站终端线路旗标(incoming terminal line banner):

* 登录旗标

* 每日消息旗标

EXEC旗标:可配置线路激活(EXEC)旗标,这种旗标在创建EXEC进程(如线路激活或由VTY线路连接)时显示。通过控制台端口建立

EXEC会话时,我们将激活ECEC旗标

入站旗标:在连接到反向Telnet线路的终端上显示。这种旗标可以用于反向Telnet的用户提供操作说明。

登录旗标:可配置在所有链接的终端上显示的登陆旗标。这种旗标在MOTD旗标之后显示,并在登陆提示前显示。我们不能基于线路禁用登陆旗标,而必须全局禁用它。no banner login 删除。

Router(config)#banner login #hello#

每日消息旗标:向任何拨号或通过telnet、辅助端口甚至控制台端口连接路由器的人显示一条消息。

Switch(config)#banner motd # message #

Router(config)#banner motd # This is a cisco Router #

查看IOS版本

Router#show version 显示系统硬件的基本配置以及软件版本和启动映像

Cisco IOS Software, 1841 Software (C1841-ADVENTERPRISEK9-M), Version 12.4(15)T13, RELEASE SOFTWARE (fc3)

Technical Support: Support and Documentation - Cisco Systems

Copyright (c) 1986-2010 by Cisco Systems, Inc.

Compiled Wed 07-Apr-10 10:21 by prod_rel_team

ROM: System Bootstrap, Version 12.4(13r)T, RELEASE SOFTWARE (fc1)

Router uptime is 1 hour, 23 minutes 显示路由器运行了多长时间

System returned to ROM by reload at 01:50:41 UTC Tue Nov 26 2013 路由器是如何重启的

System image file is "flash:c1841-adventerprisek9-mz.124-15.T13.bin" IOS的的文件路径名

This product contains cryptographic features and is subject to United

States and local country laws governing import, export, transfer and

use. Delivery of Cisco cryptographic products does not imply

third-party authority to import, export, distribute or use encryption.

Importers, exporters, distributors and users are responsible for

compliance with U.S. and local country laws. By using this product you

agree to comply with applicable laws and regulations. If you are unable

to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:

Export Compliance Product Report Application

If you require further assistance please contact us by sending email to

export@cisco.com.

Cisco 1841 (revision 7.0) with 293888K/99328K bytes of memory. /--内存/二级缓存容量--/

Processor board ID FHK112510RS

2 FastEthernet interfaces

2 Serial(sync/async) interfaces

1 Virtual Private Network (VPN) Module

DRAM configuration is 64 bits wide with parity disabled.

191K bytes of NVRAM.

62592K bytes of ATA CompactFlash (Read/Write) Flash容量

Configuration register is 0x2102 配置寄存器值

no server config

3640总是不断弹出%Error opening tftp://255.255.255.255/之类的东西,很是恼火,在全局配置模式下敲入no logging console以及设置启动目录boot system 也没用,因为我在sh flash里面没发现文件,后来在网上找了一下,终于找到了解决方法

#

conf t

no service config

do wr (一定要保存,否则还是会报错)

高级编辑命令

show history 显示最后一次输入的命令

show terminal 显示终端配置和历史记录缓冲区的大小

terminal history size 修改缓冲区的大小(最大为256)

SDM

•在路由器连接PC的接口上配置IP地址,测试PC到路由器的连通性

•在路由器上开启HTTP或者HTTPS的服务

Router(config)#ip http server

Router(config)#ip http authentication local

•创建一个15等级的用户

Router(config)#username cisco privilege 15 password cisco

•配置TELNET/SSH启用认证本地数据库

Router(config)#line vty 0 4

Router(config-line)#login local

思科路由器ROM模式下灌入IOS

这次遇到的是思科路由器,为2800,根据客户提供的信息,该路由器无法正常启动,启动时会自动进入到ROM模式,初步认为是IOS损坏。于是使用TFTP

向路由器灌入IOS,使用的IOS为:c2800nm-ipbase-mz.124-15.T13.bin

步骤如下:

1.进入ROM模式,查看FLASH中是否存在IOS。

rommon1>show flash:

Bad device name

无法查看到IOS,那么就要进行灌入IOS

2.设置TFTP

rommon2>setIP_ADDRESS 10

usage:set

rommon3>IP_ADDRESS=172.16.100.1 设置路由器IP地址,为F0/0口

rommon4>IP_SUBNET_MASK=255.255.255.0 设置子网掩码

rommon5>DEFAULT_GATEWAY=172.16.100.2 设置网关

rommon7>TFTP_SERVER=172.16.100.2 设置TFTP服务器IP

rommon8>TFTP_FILE=c2800nmipbase-mz.124-15.T13.bin 设置IOS名称

设置完毕。

注意:以上命令必需用大写,TFTP服务器IP地址必需可达,在TFTP服务器中预先设置好根目录并且将IOS放入根目录中。

下面将进行灌入

IOSrommon9>tftpdnld

IP_ADDRESS: 172.16.100.1IP_SUBNET_MASK: 255.255.255.0

DEFAULT_GATEWAY: 172.16.100.2

TFTP_SERVER:172.16.100.2

TFTP_FILE:c2800nm-ipbase-mz.124-15.T13.bin

目前Cisco IOS向可移植化的发展表明,IOS 11.3及更高版本更易于移植到新的平台。最终的目标是将IOS发展为静态的更为高级的模块化结构,它允许单独定义IOS特性而与其它特性(或子系统)不相关。Cisco可根据客户的特定需求建立IOS特性/解决方案集。随着IOS继续发展,客户将能够和匹配专门的IOS特性,来满足其特定环境的要求。

 

============= End

 

posted @ 2020-11-08 14:58  lsgxeva  阅读(2210)  评论(0编辑  收藏  举报