目录

简介

先决条件

要求

使用的组件

规则

背景信息

将运行配置文件从路由器复制到TFTP服务器

逐步指导

检查配置

将配置文件从TFTP服务器复制到路由器

逐步指导

将Cisco IOS映像从路由器复制到TFTP服务器

逐步指导

检查配置

将Cisco IOS映像从TFTP服务器复制到路由器

逐步指导

附录 A

MIB对象详细信息

简介

本文档介绍如何在路由器和简单文件传输协议(TFTP)服务器之间移动配置文件和软件映像。

先决条件

要求

本文档的读者必须了解SNMP和MIB。

使用的组件

本文档中的信息基于Cisco IOS®软件版本10.2或更高版本。这些示例使用的MIB是OLD-CISCO-SYS-MIB和OLD-CISCO-FLASH-MIB,Cisco IOS软件版本10.2及更高版本支持这些MIB。Cisco建议您使用较新版本的Cisco IOS软件，如Cisco IOS软件版本12。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

规则

在本文档显示的所有示例中，这些值均用于说明目的：

- 172.16.99.20 -路由器的IP地址。

- 10.68.191.135 - TFTP服务器的IP地址。

- private - SNMP读写社区字符串。确保使用路由器上配置的读写字符串。在路由器CLI上发出show running-config命令以验证这一点。

- 在以下示例中，发出thesnmpsetandsnmpwalkcommand时的语法如下：

snmpset [options...]

{

} [

...] snmpwalk [options...]

{

} [

]

注意：要增加超时，请使用snmpset 命令中的 — t <timeticks>选项。

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

背景信息

确认可以从路由器ping TFTP服务器的IP地址：

Router#ping 10.68.191.135

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.68.191.135, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms:

步骤如下：

- 不适用于基于Cisco IOS软件的Catalyst交换机，例如Catalyst 2900/3500XL系列。

- 不适用于基于CatOS软件的Catalyst交换机，例如Catalyst 4000/5000/6000系列。

- 不适用于运行Cisco IOS软件的Catalyst 6000系列多层交换功能卡(MSFC)和MSFC2模块。

- 如果路由器上未配置或未知的SNMP读写社区字符串，则不适用。有关如何配置SNMP社区字符串的详细过程，请参阅如何在路由器、基于Cisco IOS软件的XL交换机、RSM、MSFC和Catalyst交换机上配置SNMP社区字符串。

- 如果运行Cisco IOS软件版本12或更高版本，则必须使用CISCO-CONFIG-COPY-MIB。

- 基于NET-SNMP(以前称为UCD-SNMP)实用程序的命令行语法。如果使用某些其他SNMP应用程序（如HP Open View或NetView），请确保验证可能与本文档示例中显示的语法不同的语法。

- 基于OLD-CISCO-SYS-MIB和OLD-CISCO-FLASH-MIB。使用此MIB中的MIB对象：

MIB 对象名称

OID

writeNet

.1.3.6.1.4.1.9.2.1.55

hostConfigSet

.1.3.6.1.4.1.9.2.1.53

writeMem

.1.3.6.1.4.1.9.2.1.54

flashToNet

.1.3.6.1.4.1.9.2.10.9

flashErase

.1.3.6.1.4.1.9.2.10.6

netToFlash

.1.3.6.1.4.1.9.2.10.12

将运行配置文件从路由器复制到TFTP服务器

逐步指导

请完成以下步骤：

1. 在TFTP服务器的/tftpboot目录中创建一个新文件router-config。在UNIX上，使用语法:touch <filename>。

touch router-config

2. 使用语法chmod <permissions> <filename>将文件权限更改为777。

chmod 777 router-config

3. 在管理站命令行中，使用MIB objectwriteNet输入以下信息：

% snmpset 172.16.99.20 private .1.3.6.1.4.1.9.2.1.55.10.68.191.135

s router-config enterprises.9.2.1.55.171.68.191.135 = "router-config"

检查配置

验证TFTP服务器的/tftpbootdirectory中的router-config文件是否已成功复制。

将配置文件从TFTP服务器复制到路由器

逐步指导

1. 执行这些任务之一：

- 在TFTP服务器的/tftpbootdirectory中创建一个新文件，router-config。在UNIX上，使用syntaxtouch <filename>。

touch router-config

- 将当前配置文件放在TFTP服务器的/tftpbootdirectory中。

2. 使用syntaxchmod <permissions> <filename>将文件权限更改为777。

chmod 777 router-config

3. 在管理站命令行中使用MIB objecthostConfigSet，输入以下命令：

% snmpset -t 60 172.16.99.22 private .1.3.6.1.4.1.9.2.1.53.10.68.191.135

s router-config OR % snmpset -t 60 172.16.99.22 private

enterprises.9.2.1.53.171.68.191.135 = "router-config"

其中- t 60等于60个时间刻度的超时。

4. 将文件写入RAM后，使用MIB objectwriteMem将其复制到NVRAM:

% snmpset -t 60 172.16.99.22 private .1.3.6.1.4.1.9.2.1.54.0 i 1

enterprises.9.2.1.54.0 = 1

将Cisco IOS映像从路由器复制到TFTP服务器

逐步指导

1. 执行这些任务之一：

- 在TFTP服务器的/tftpbootdirectory中创建一个新文件router-image。在UNIX上，使用syntaxtouch <filename>。

touch router-image

- 使用在show flashoutput中显示的相同文件名，以便在TFTP服务器的/tftpbootdirectory上创建文件。在本示例中，路由器将sc2600-i-mz.122-2.XA列为show flash的输出: 命令。

touch c2600-i-mz.122-2.XA

2. 使用syntaxchmod <permissions> <filename>将文件的权限更改为777。

chmod 777 c2600-i-mz.122-2.XA

3. 在管理站命令行中，使用MIB objectflashToNet输入以下信息：

% snmpset 172.16.99.22 private .1.3.6.1.4.1.9.2.10.9.171.68.191.135

s c2600-i-mz.122-2.XA enterprises.9.2.10.9.171.68.191.135

= "c2600-i-mz.122-2.XA"

检查配置

文件传输完成后，验证/tftpbootdirectory中的文件和路由器上的文件大小(字节)是否相同。

将Cisco IOS映像从TFTP服务器复制到路由器

逐步指导

请完成以下步骤：

1. 将Cisco IOS映像放在TFTP服务器的/tftpbootdirectory中。确保咨询软件下载(仅注册客户)。

2. 使用syntaxchmod <permissions> <filename>将文件权限更改为777

chmod 777 <Cisco IOS image file>

3. 在通过SNMP开始文件传输之前，请执行adir flash:或show flash:验证您是否有足够的空间来存储新的Cisco IOS映像文件。

如果在您的闪存中没有需要的空间，文件传输会发生故障。或者，您可以先清除闪存，通过SNMP为新的Cisco IOS软件腾出空间。如果是，请使用MIB objectflashErasecommand从管理站命令行输入此信息：

% snmpset 172.16.99.22 private .1.3.6.1.4.1.9.2.10.6.0 i 1

enterprises.9.2.10.6.0 = 1

注意：发出CLI命令ase flash:

4. 验证闪存已完全擦除。发出dir flash:或show flash:命令。

Router#show flash:

System flash directory:

No files in System flash

[0 bytes used, 33030144 available, 33030144 total]

32768K bytes of processor board System flash (Read/Write)

Router #dir flash:

Directory of flash:/

No files in directory

33030144 bytes total (33030144 bytes free)

5. 在管理站命令行中，使用MIB objectnetToFlasht输入此信息以将Cisco IOS映像文件传输到路由器：

% snmpset 172.16.99.22 private .1.3.6.1.4.1.9.2.10.12.10.68.191.135

s c2600-i-mz.122-2.XA.bin enterprises.9.2.10.12.171.68.191.135

= "c2600-i-mz.122-2.XA.bin"

注意：在本例中，Cisco IOS映像文件c2600-i-mz.122-2.XA.bin用于说明。

6. 根据Cisco IOS映像的文件大小（字节），完成此步骤可能需要几分钟。

如果您在路由器上的文件传输期间尝试执行CLI commanddir flash:，则会显示此输出。此输出表示文件传输尚未完成。

Router#dir flash:

%Error opening flash:/ (Device in exclusive use)

7. Cisco IOS映像文件传输完成后，执行CLI commanddir flash:orshow flash:用于验证文件名和文件大小（字节）是否与TFTP服务器的/tftpbootdirectory中使用/存在的文件完全匹配。

然后，您可以将配置寄存器设置为适当的值，并重新加载路由器（如果需要）以加载新的Cisco IOS映像文件。有关如何执行此操作的更多详细信息，请参阅Cisco IOS软件配置文档。

附录 A

MIB对象详细信息

对象

writeNet

OID

.1.3.6.1.4.1.9.2.1.55

类型

DisplayString

权限

仅写入

状态

必需

MIB

OLD-CISCO-SYS-MIB

描述

将配置写入使用TFTP的主机。

树中的OID

::= { iso(1)org(3)dod(6)internet(1)private(4)enterprises(1)cisco(9)local(2)lsystem(1)55 }

对象

hostConfigSet

OID

.1.3.6.1.4.1.9.2.1.53

类型

DisplayString

权限

仅写入

状态

过时

MIB

OLD-CISCO-SYS-MIB

描述

使用TFTP加载新的host-confg文件。

树中的OID

::= { ISO(1)org(3)DOD(6)互联网(1)私有(4)企业(1)思科(9)本地(2)lsystem(1)53 }

对象

writeMem

OID

.1.3.6.1.4.1.9.2.1.54

类型

DisplayString

权限

仅写入

状态

必需

MIB

OLD-CISCO-SYS-MIB

描述

使用TFTP加载新的host-confg文件。

树中的OID

::= { ISO(1)org(3)DOD(6)互联网(1)私有(4)企业(1)思科(9)本地(2)lsystem(1)54 }

对象

flashToNet

OID

.1.3.6.1.4.1.9.2.10.9

类型

DisplayString

权限

仅写入

状态

必需

MIB

OLD-CISCO-FLASH-MIB

描述

将闪存条目写入TFTP服务器。该值必须是要发送的闪存条目的名称。Instance是TFTP主机的IP地址。

树中的OID

::= { ISO(1)org(3)DOD(6)Internet(1)private(4)enterprises(1)cisco(9)local(2)lflash(10)9 }

对象

flashErase

OID

.1.3.6.1.4.1.9.2.10.6

类型

整数

权限

仅写入

状态

必需

MIB

OLD-CISCO-FLASH-MIB

描述

请求擦除闪存。

树中的OID

::= { ISO(1)org(3)DOD(6)Internet(1)private(4)enterprises(1)cisco(9)local(2)lflash(10)6 }

对象

flashToNet

OID

.1.3.6.1.4.1.9.2.10.12

类型

DisplayString

权限

仅写入

状态

必需

MIB

OLD-CISCO-FLASH-MIB

描述

从TFTP服务器写入闪存条目。该值必须是要写入的闪存条目的名称。Instance是TFTP主机的IP地址。

树中的OID

::= { ISO(1)org(3)DOD(6)互联网(1)私有(4)企业(1)cisco(9)local(2)lflash(10)12 }