10、设备管理及cisco IOS基础配置
CISCO路由器及启动过程
路由器组件
CPU:中央处理器,CPU执行操作系统的指令,例如启动,路由功能和交换功能。
RAM(random access memory):随机访问存储器,RAM是一种易失性内存,需要持续供电才能保留其内容,如果重启或电源断电的话,该存储器上的内容会全部丢失。RAM上存储那些需要被运行的数据,比如路由器的操作系统、目前正在运行的配置文件(Running Configuration File)、路由表(IP Routing Table)、ARP缓存表(ARP Cache)、缓存数据(Packet Buffer)等。思科设备上运行的操作系统叫做“Cisco IOS”,IOS是Internetwork Operating System的简写,和苹果运行的IOS系统简写一样,话说貌似苹果给了思科授权费才能也用这个简写;Running Configuration File,它是存储了路由器IOS系统目前运行的配置命令,路由器上几乎所有配置命令都存储在running configuration file中,一般叫做running configuration;ARP缓存表(ARP Cache),缓存表中包含了IPV4地址和MAC地址对应的表项,当路由器上有以太网接口时才会有ARP缓存表;缓存数据(Packet Buffer),当接口收到或发出数据前会暂时存储在缓存中,这些暂时存储的数据叫做数据缓存。
ROM(read-only memory),ROM是一种永久性存储,即使断电重启,其中的数据也不会丢失。思科设备中的ROM存储的是,POST,bootstrap,ROMMON,mini-IOS。
- POST:Power on self test,开机自检程序,用来确定所有必备开机的组建都能正常运行;
- bootstrap:开机指令,负责启动路由器并找到IOS系统的位置将其加载到RAM中;
- ROMMON:ROMMON是一个精简版IOS程序,在ROMMON上可以进行各种系统检测和进行密码恢复,如果bootstrap成功找到IOS系统则不会进入ROMMON模式,如果bootstrap找不到系统则会进入ROMMON模式;
- mini-IOS:Mini-IOS是一个备用工具,它包含了一个剥离版的IOS。它适用于找不到IOS映像的关键情况。Mini-IOS只包含IP代码,允许你从其他资源(如TFTP Server)加载IOS。
Flash Memory,Flash Memory是一种非易失性存储,可以通过电子方式进行存储和擦除数据,主要用来存放IOS操作系统。
NVRAM,NVRAM是Nonvolatile RAM的简写,中文是非易失性RAM存储,这种存储在断电或重启时也不会丢失其中的数据,主要用来存放startup configuration,也就是设备的启动配置。
路由器启动过程
理论步骤
路由器开机后,先运行ROM中的POST,也就是进行硬件自检,看必备的开机部件(CPU, RAM和NVRAM)是否都工作正常,如果正常的话,将ROM中的Bootstrap程序拷贝到RAM中运行,当拷贝完毕且在RAM运行后,CPU执行bootstrap程序搜寻IOS操作系统的位置,搜索的过程依次为Flash — TFTP Server — ROM,如果都没有的话则进入ROMMON模式,如果找到操作系统则操作系统会加载到RAM中运行,并加载存储在NVRAM中的开机启动配置,当所有程序都在RAM中成功加载后,开机过程运行完毕。
实际分析
POST (Power On Self Test) - 首先 Router 会自我检查一下
载入Bootstrap - 然后会加载Bootstrap这个应用程序,功能是后面加载IOS操作系统。
读取Configuration Register
接下来会读取配置寄存器的数值,预设为0X2102,换算成二进制就是0010 0001 0000 0010 , 每位都有不同的作用,一般情况下不会改变这个数值,但如果要冲重新设置密码,需要看第六位,也就是从右往左数第七个数字,之所以是第七个数字,是因为右起第一个数字是第零位,右起第二个数字是第一位,以此类推第六位也就是尤其第七个数字:
这个 Bit 可控制 Router 要不要跳过读取 Startup Configuration,预设 0 是不跳过 (即读取),设成 1 则是跳过 (即不读取)。但开机时是看不到 Configuration Register 的值,只有在开机後用 Show Version 才可看到。
载入 IOS - 依 Flash丶TFTP 和 ROM 的次序载入 IOS,即是我们常常看见很多 # 号那个时刻
载入 Startup Configuration
跟据 Configuration Register 的值决定是否载入 Startup Configuration。如果没有载入或 Startup Configuration 不存在,就会询问是否进行 Initial Configuration,就像打开一台新机一样。
无论是 Console 密码丶Enable 密码都是储存在 Startup Configuration 之中,然後被载入至 Running Configuration。然而修改 Configuration 需要 Enable 密码,重设密码的哲学在於「如何在不用密码的情况下进入 Enable Mode (或称 Privilege Mode)
忘记登陆密码如何进入系统
配置寄存器
配置寄存器(Configuration Register)是一个16位的虚拟寄存器,用于指定路由器启动的次序、中断参数和设置控制台波特率等,不同的配置寄存器数值决定了路由器的启动顺序(比如是从ROM中寻找IOS系统还是直接进入ROMMON模式)以及启动时的一些选项。该寄存器的值通常是以十六进制来表示的。Cisco路由器默认的配置设置是0x2102,这意味着第13位、第8位和第1位是开启的(值为1)。在特权模式下用命令“show version”查看当前配置寄存器的数值为多少。通过修改该数值可以决定路由器如何启动和运行。
上图中的二进制的0010000100000010,是由0X2102这个16进制的数字换算而来的,换算过程是,分别将2,1,0,2四个16进制换算成2进制然后组合而成。
配置寄存器的默认设置是0x2102。这表明路由器应该尝试从闪存装载Cisco IOS软件镜像和用9600波特的控制台速率装载启动配置。注意,show version命令显示当前配置寄存器的值,也显示路由器重载后配置寄存器新的值。对配置寄存器进行的任何修改在重载之前不会起作用。
口令恢复
总体思路是,在开机时需跳过载入 Startup Configuration,在没有任何密码的情况下进入 Enable Mode,然後手动载入 Configuration 并修改密码。正如前面介绍过的,配置寄存器的第6位用于告诉路由器是否使用NVRAM中的内容来加载路由器的配置。默认的配置寄存器值是0x2102,即第6位是关闭的(值为0)。默认情况下,路由器会查找并加载存储在NVRAM(startup-config文件)中的路由器配置。若要恢复口令,需要开启第6位,告诉路由器忽略NVRAM的内容,二进制的话就是0010000101000010,换算成16进制就是0X2142,开启了第6位的配置寄存器值是0x2142,所以在口令回复的时候要将寄存器值从默认的0X2102改成0X2142,葫芦i额NVRAM的内容才能进行密码恢复。
1.启动路由器
在IOS系统被载入时按键盘的Ctrl 和 Break键, (如 Mac 可按 Ctrl-Delete) 中断载入,并进入 rommon 模式。
如果用笔记本的话没有小键盘的Break键,可以试试如下方法:
2.修改配置寄存器,开启第6位,值为0x2142
按 ? 再按
3.重载路由器
rommon 2 >reset //Cisco 2600系列路由器
>I //初始化,Cisco 2500系列路由器
4.进入特权模式将开机启动配置加载到内存
这次开机让它载入 IOS,最後因为没有载入 Startup Configuration 而出现 Initial Configuration Dialog 模式,输入 no 跳过,这时不用密码也可进入 Enable Mode 了
4.查看明文口令、重设口令
由於刚才跳过了载入 Startup Configuration,现在手动把 Startup Configuration 抄写至 Running Configuration,现在可以修改密码了,最後别忘记 write memory 把 Configuration 储存至 Startup Configuration。
5.设置配置寄存器值为默认值
重新开机,再次按键盘 Ctrl-Break (如 Mac 可按 Ctrl-Delete) 进入 rommon 模式,把 Configuration Register 回复至 0x2102 并重新开机,重设密码的步骤便完成了。
Cisco 交换机
交换机启动过程
POST (Power On Self Test) - 进行开机硬件自检
flash_init - 载入 flash_init 的小程式,用作读取 flash 里的档案。
载入 IOS - 依 Flash丶TFTP 和 ROM 的顺序搜索并载入 IOS。
载入 Startup Configuration - 如 Flash 中有 config.text 这个档案则载入,否则进入 System Configuration Dialog 模式。思科2900及3500系列的交换机并没有Configuration Register,要跳过载入 Startup Configuration 只需在 flash 把 config.text 档名改掉便可。
Switch密码重置步骤
2950/2960/3550/3560系列
进入Password-recovery 模式
Switch 没有开关按钮,一插电制便开机了,在插电制的同时按着面版上的 Mode 按钮,直至 Switch 进入 Password-recovery 模式。
更改启动配置文件名称
输入 flash_init 挂载 flash 档案系统,然後输入 dir flash: 应可看到 flash 里面的档案列表,这里我们的启动配置文件的名称是:config.text,将该文件改名为 config.bak,rename flash:config.text flash:config.bak,然後用指令 boot 开始载入 IOS。
由於系统找不到 config.text,因而没法载入 Startup Configuration 而出现 Initial Configuration Dialog 模式,输入 no 跳过,这时不用密码也可进入 Enable Mode 了。
把 flash:config.bak 改回 flash:config.text,然後把 startup-config 抄至 running-config,现在可以修改密码了,最後别忘记 write memory 把 Configuration 储存至 Startup Configuration。重设密码步骤完成。
3650/3850
从 3650 开始,Switch 的 IOS 改用 Linux Base,重设密码方法又有点不同,步骤如下:
1、在插电制时先按着面版上的 Mode 去中断正常开机程序。
2、输入指令 SWITCH_IGNORE_STARTUP_CFG=1 (全大写),这样就会跳过载入 Startup Configuration。
3、输入指令 flash_init 和 boot 把 IOS 载入。
4、系统进入 Initial Configuration Dialog 模式,输入 no 跳过,这时不用密码也可进入 Enable Mode 了。
5、由於刚才跳过了载入 Startup Configuration,所以手动把 Startup Configuration 抄写至 Running Configuration,现在可以修改密码了,最後别忘记 write memory 把 Configuration 储存至 Startup Configuration
6、重新开机,再次按住 mode 按钮去中断正常开机程序,把 SWITCH_IGNORE_STARTUP_CFG 的值改回 0,然後输入指令 flash_init 和 boot 继续开机程序。重设密码步骤完成。
设备管理及CISCO IOS介绍
CISCO IOS概述
Cisco互联网络操作系统,Cisco私有的网络设备操作系统。它是Cisco 的一项核心技术,该操作系统应用于Cisco路由器、局域网交换机、小型无线接入点等设备。
cisco IOS 可为设备提供下列网络服务:
- 基本的路由和交换功能
- 安全可靠地访问网络资源
- 网络可伸缩性
设备管理方法
可以通过多种方法访问CLI(Command Line Interface,命令行界面) 环境,CLI是一种基于字符(文本)的界面,要与CLI交互,只需要输入命令,就像在文本编辑器中输入文章那样,在CLI中也可以使用复制黏贴等功能,。最常用的方法有:
- 通过Console接口管理设备
- 通过Telnet或SSH远程管理设备
- 辅助端口
带内\外管理
管理网络设备可以分为带外网管(out-of-band)和带内网管(in-band)两种模式。
带外管理
带外管理是指通过专门的网络通道实现对网络的管理,将网络数据与业务数据分开,为网管数据建立独立通道,只传输管理数据、统计信息、计费信息等,网管数据与业务数据分离,可以提高网管的效率与可靠性,也有利于提高网管数据的安全性。说简单一些,就是另外建立一张网络,只用于网络设备的远程管理,当业务网络出现问题的时候,不会影响到网络设备的远程管理。
带内管理
带内管理使得网络中的网管数据和业务数据在相同的链路中传输,当管理数据(包括SNMP、Netflow、Radius等)较多时,将会影响到整个网络的性能;管理数据的流量较少时,对整个网络的性能影响不明显,可以采用带内管理。
像是Openview,CiscoWorks、Tivoli这种网络管理软件系统都是带内网管,如果无法通过网络访问被管理对象,则带内管理系统就失效了,这时候就需要使用带外管理。
带内网管的实现有以下几种方式:
- 直接使用物理接口或者Interface VLAN(SVI)的地址就可以实现带内网管。比如一个路由器上G0/0接口的IP地址是10.41.222.13,G0/1的地址是10.41.222.21,那么10.41.222.13、10.41.222.21都可以作为这个路由器的远程管理地址。这种管理方式直接使用业务地址或者互联地址进行管理,是不符合网络安全规范的,很多企业都禁止使用这种管理方式,在一些不是特别严谨的场合使用倒也无妨。
- 使用Loopback接口进行管理,这种管理方式通常用于骨干网或者配置了OSPF、EIGRP等动态路由协议的网络,如果网络中配置了冗余链路,使用Loopback接口进行管理,也不用担心一条链路中断,这种管理方式也算是最为常见的网管方式了。
- 使用管理VLAN进行管理,这种管理方式应用于局域网或交换机较多的网络中。通常做法是创建一个专门的管理VLAN,给这个VLAN内配置上管理地址即可。在接入层交换机中,二层交换机不支持三层路由功能,要想实现远程管理就只能使用管理VLAN的方式了。
带内网管的优缺点:
优点:直接利用现有的网络资源就可实现网络管理,节约成本,经济性好,带内网管会占用一定资源,但对于正常网络业务来说影响十分有限;
缺点:过分依赖于业务网络的稳定性,当业务网络出现中断的时候会影响到网络设备的远程管理。
通过Console接口管理网络设备
Console,翻译成中文就是控制台,Console口就是专门用来配置设备的接口,用Console线和电脑连接,常见的Console线有以下几种:
一种是RJ-45(连接设备的Console口) —— DB-9(连接计算机)线,但由于现在很多电脑已经没有了DB-9接口,所以大多情况下需要额外的转接口才能和电脑连接:
另一种是RJ-45(连接设备的Console口) —— USB(连接计算机)线,所有电脑上都有USB接口,所以不用额外的设备即可连接计算机,比较方便,更推荐使用这种线连接设备:
还有一种蓝牙Console线,不受线长约束,非常方便:
用Console先连接好设备与计算机后,可以用超级终端或Secure CRT连接设备
超级终端(HyperTerminal)
连接上Console线并装好驱动后,设备管理器中的端口选项中会多出一个设备,记住连接的是哪个COM口
Win XP系统自带超级终端,可以再附件中找到该工具,其他系统的话需要自行下载。打开超级终端后,有个对话框提示要填写位置电话号码,点击取消关闭该对话框,然后进入连接配置界面,名称随便输入即可。
确定使用端口为上面设备管理器中的设备后,点击确定。
参数建议直接选择还原默认值,注意核对“位/秒”一项的值为9600即可点击确定,成功通过Console口登入设备。
Secure CRT
Secure CRT是网工常用的登录并对设备进行配置的强大工具,它支持SSH、Telnet和rlogin等协议,也可运行VBScript 和 JScript 脚本。该软件是一款商业软件,可以免费试用30天。安装好软件后,点击“New Session”新建连接。
协议(Protocol)使用Serial,端口(Port)使用设备管理器中显示的COM口号码,波特率(Baud rate)选择9600,其他用默认选项即可,连接名称可以自定义,此处用 “Cisco serial Console”,设置完毕后即可用Secure CRT通过Console口连接到设备。
下次使用时,该连接在Connect标签中会有保存,可直接点击Connect使用进行连接,不用重新配置参数。
IOS系统的备份与升级
IOS系统备份
1、设置TFTP服务器,记住该服务器的IP地址。
2、连接需要备份系统的设备,并登陆到特权模式,然后用show Flash命令查看Flash中有哪些文件:
上面这个.bin后缀的文件就是我们要备份的IOS,根据你选择的路由器的不同,这个文件名称也会有所不同,复制这个名称,等会要用到。
3、使用copy
命令将flash中的文件备份到tftp服务器。copy
flash tftp,然后输入之前记住的TFTP服务器的IP地址,确保服务器与本设备可以正常通信,备份文件名可以进行更改也可以直接回车用IOS的原名称:
1 | Address or name of remote host []? 192.168.1.100 |
IOS系统升级
当路由器的IOS有了新的版本,可以通过下面的命令来升级,升级前可以使用show flash来查看一下flash空间大小,看看是否可容纳新的IOS文件。
1、从TFTP服务器上拷贝需要升级的IOS文件到Flash上
1 | R1#copy tftp flash |
2、路由器询问是否在拷贝新的IOS前删除旧的IOS系统,如果按回车则会删除旧的IOS系统
1 | Erase flash: before copying? [confirm] |
3、删除旧IOS系统后开始拷贝新IOS系统
1 | Accessing tftp://192.168.1.100/c2800nm-advipservicesk9-mz.124-15.T1.bin... |
4、如果Flash中有多个IOS系统,可以使用下面的命令让这个新的IOS作为默认系统使用
1 | R1(config)#boot system flash flash:c2800nm-advipservicesk9-mz.124-15.T1.bin |
IOS系统恢复
如果IOS文件被不小心删除,或者在升级IOS的过程中突然断电,则可能造成路由器IOS文件的丢失,路由不能正常启动,假设服务器上备份好了路由器的IOS文件,这里手动删除路由器的IOS来模拟IOS丢失的情况,因为IOS文件被删除,重启以后路由器进入了ROM monitor模式,在这个模式下配置下面的信息:
1 | rommon 1 > |
注意:使用这种方法时,必须连接路由器接口号最小的那个以太网接口
CISCO IOS配置模式
用户模式(User Mode),显示为:cisco>
– 正常登陆设备CLI后的第一个配置模式,只具备最基本的查看权限,输入“?”查询能使用的命令后发现可用命令十分有限。
输入命令:enable后即可进入特权模式。
特权模式(Privilege execute mode),显示为:cisco#
– 从用户模式通过认证(如果设置了密码)后即可进入特权模式,从截图中可以看到,输入“?”查询能使用的命令后发现可用命令相比用户模式多了很多。
全局配置模式(Global Configuration mode),在特权模式中输入config terminal 命令后即可进入全局模式,这个模式主要是针对网络整体参数进行的设置,例如DNS地址或接口IP地址等。从截图中可以看到,输入“?”查询能使用的命令后发现,命令相比前两个模式并不相同。
– 可配置设备全局参数,开启或关闭设备全局特性或功能;
– 从全局配置模式可进入多种不同的其他子配置模式。
CISCO IOS命令
IOS命令结构
- 每个IOS 命令都具有特定的格式或语法,并在相应的提示符下执行。
- 常规命令语法为命令后接相应的关键字和参数。
- 某些命令包含一个关键字和参数子集,此子集可提供额外功能。
CLI的帮助
命令提示及补全
命令提示:输入一半或未输入命令时,在命令行中输入“?”后系统会提示接下来可能存在的补全命令,例如输入rout 然后输入? 后,系统会告诉用户所有以“ rout ”开头的命令,在本例中有两个,一个是route-map,一个是router,如果没有任何以这个开头的命令则系统会提示用户知道。
如果在命令行中不输入任何命令直接输入“?”,则系统会将所有可能运行的命令告知用户。
命令补全:在输入部分命令后,直接按键盘上的TAB键,如果此时用户输入的命令只存在一种可能,则按完TAB键后该命令会自动补全。
命令语法检查
热键和快捷方式
cisco IOS 基础配置
修改设备名称
1 | Router(config)# hostname AS_SSL_1F_S3640 |
配置用户登录密码:
Console Password
用于限制人员通过控制台(Console)连接访问设备
1 | R1(config)#line console 0 在全局配置模式下进入console口 |
特权模式密码
限制人员使用特权模式配置设备
1 | Router(config)#enable password cisco 设置非加密的特权模式密码,在查看命令时会显示密码,不安全 |
VTY 口令
用于限制人员通过Telnet 远程访问设备
1 | Router(config)#line vty0 4 进入编号为0-4的这5条VTY线路中 |
管理配置文件
将当前配置写入启动配置文件,这样当前运行的配置(running-config)会保存在NVRAM中变成开机配置(startup-config),即使重启或断电后开机后依然会是该配置,下面两条命令均可实现此功能。
1 | R1# write 也可简写做wr |
删除启动配置文件,删除开机启动的所有配置,务必谨慎使用
1 | R1# erase startup-config 删除 |
备份配置文件
TFTP备份
1、通过TFTP软件工具备份公司Cisco2960交换机的配置,用软件建立TFTP服务器,Server interfaces填入启动软件的电脑IP:172.18.1.88,备份文件存放地址E:\Cisco_bak
2、用Secure CRT 通过telnet登录2960交换机,使用命令,copy running-config tftp ,然后输入TFTP的IP地址,172.18.1.88,输入备份的文件名为:djjs-as-c2960x-2-config
3、在E:\Cisco_bak下查看备份的配置文件,确认备份成功。
复制黏贴备份
在全局配置模式下,输入show run,然后将输出的命令行复制黏贴到文本文档中保存起来。
接口相关配置
进入接口
1 | R1(config)# interface ethernet 0/0 进入Ethernet 0/0接口 |
Ethernet是一种接口类型,全称是Fast Ethernet,速率为100M,除此之外还有Gigabit Ethernet,千兆接口。
Ethernet 后面这个0/0,一般命名规则是:模块号/接口序号,0/0就是第0个模块板的第0个编号的接口
设备接口规则:
- 固定配置或者低端路由器。其接口编号使用单个数字,如1600路由器的接口编号可以是e0(以太网接口),s0(串行接口0)
- 中低端模块化路由器,其接口编号使用两个数字,中间用“1”格开,斜杠前面的是模块号,后面是模块接口编号,如2600路由器上的fa0/1表示第1个槽位的第2个接口,该接口是快速以太网接口。
- 高端模块化路由器,其接口编号有时是三个数字,中间用“/”格开,第一个数字是模块号,第二个数字是该模块上的子卡号,第三个数字是该子卡上的接口模块号。如2800路由器上的G0/0/0表示0槽位第1个子模块上的第一个接口,该接口是 千兆位以太网口。
为接口配置IP地址
1 | R1(config-if)# ip address 192.168.1.1 255.255.255.0 |
激活接口
1 | R1(config-if)# no shutdown CISCO设备接口默认shutdown状态,必须将接口开启才能使用 |
配置serial接口
1 | R1(config)# interface serial 0/0 进入serial 0/0接口 |
show命令
1 | show ? |
设置命令输入同步模式
输入命令的时候,经常会有路由返回的各种消息打断了你的输入,虽然可以使用”Ctrl+R”来将当前输入转移到新行继续输入,但是这样非常不方便,可以通过下面的命令来让路由返回的消息不影响你的输入:
1 | R1(config)#line console 0 /进入console线路, |
返回上级命令
exit命令是一次退一级的命令
1 | R1(config-line)#exit |
end命令是一次性退到特权模式最外层
1 | R1(config-line)#end |
命令缩写
命令可以缩写,缩写从要求是设备必须能够将缩写命令与其他命令区分开,比如在用户模式下要进入特权模式的命令enable可以缩写成en,因为以en开头的命令只有enable,设备不会将缩写的en错认为是其他命令。
但当缩写的命令有两种及两种以上可能时,缩写则不能使用,如下图中,interface 后面以v开头的命令有多个,这时如果直接回车输入的话,设备并不知道用户要输入具体哪个命令,所以返回一个“命令不完整”的信息。
Running-config VS Startup-config
基础实验
实验1:
结果使R1和R2之间可以连通
拓扑如上图所示,为两台直连路由器配置直连接口参数,使二者能够通信。
R1:
1 | Router# configure terminal 进入全局配置模式 |
R2:
1 | Router# configure terminal |
验证配置:
ping 命令,看两者之间通信是否畅通
ping 192.168.12.2
traceroute 命令,追踪两个IP之间的通信路径
traceroute 192.168.12.2
R2telnet 远程连接R1,看设置是否正确
1 | R2#telnet 192.168.12.1 |
CRT软件使用简介
引用文章
How to Setup a serial Console connection