Tuesday, June 19, 2012

Cisco IOS Upgrade Procedure


Introduction

This document explains how to upgrade a Cisco IOS® software image on Cisco Access Router platforms. The examples provided from the 2600 and 3600 Series Routers also apply to the list of router platforms mentioned. The Cisco IOS Software file names can vary, based on the Cisco IOS Software release, feature set, and platform.
These routers are addressed in this document:
  • Cisco 1000 Series Routers
  • Cisco 1400 Series Routers
  • Cisco 1600-R Series Routers
  • Cisco 1700 Series Routers
  • Cisco 2600 Series Routers
  • Cisco 2800 Series Routers
  • Cisco 3600 Series Routers
  • Cisco 3700 Series Routers
  • Cisco 3800 Series Routers
  • Cisco 4000 Series Routers
  • Cisco 4700 Series Routers
  • Cisco AS5300 Series Routers
  • Cisco MC3810 Series Routers
Note: You must be a registered user and you must be logged in to the Cisco.com website in order to use the troubleshooting tools described in this document. In order to register for the Cisco.com website, visit the Cisco.com Registration page.

Prerequisites

Requirements

There are no specific requirements for this document.

Components Used

The information in this document is based on the Cisco IOS Software Release 12.0 or later.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Conventions

Refer to the Cisco Technical Tips Conventions for more information on document conventions.

Background Information

Several protocols are available to copy the Cisco IOS image into the Cisco routers. The most commonly used protocol is TFTP. Other protocols include ftp, http, https, scp, and rcp. If necessary, you can copy an image from one device to another. For more information, refer to the Copying From One Router to Another section of the How To Copy a System Image from One Device to Another document.
This section describes how to install a TFTP server, how to establish a console session with the router, and the router boot problems.

Install a TFTP Server

A Trivial File Transfer Protocol (TFTP) server application must be installed on a TCP/IP-ready workstation or PC. After the application is installed, you must perform a minimal level of configuration.
  1. Download a TFTP server. Refer to TFTP Server Selection and Use for more information.
  2. Configure the TFTP application to operate as a TFTP server instead of a TFTP client.
  3. Specify the outbound file directory. This is the directory in which the Cisco IOS software images are stored. Most TFTP applications provide a setup routine in order to assist in these configuration tasks.

Establish a Console Session with the Router

Even if it is possible to connect to the router through a Telnet session, Cisco recommends that you connect directly to the router through the console port because, if something goes wrong during the upgrade, you might need to be physically present next to the router to power-cycle it. Moreover, the Telnet connection is lost while the router reboots during the upgrade procedure.
A rolled cable, usually a flat black cable, connects the console port of the router to one of the COM ports of the PC.
When the PC is connected to the console port of the router, open HyperTerminal on the PC, and use these settings:
Speed 9600 bits per second

     8 databits

     0 parity bits

     1 stop bit

     No Flow Control
If garbage characters appear in the HyperTerminal session, either you have not set the HyperTerminal properties properly or the config-register of the router is set to a non-standard value for which the console connection speed is higher than 9600 bps. In order to check the value of the config-register, issue the show version command. The config-register values appears in the last line of the output. Verify that this value is set to 0x2102 or 0x102.
Note: In order for a configuration register change to take effect, you must reload the router.
When you are sure that the console speed is set to 9600 bps on the router side, you should check the HyperTerminal properties. Refer to Applying Correct Terminal Emulator Settings for Console Connections for more information on how to set the HyperTerminal properties.

Router Boot Problems

When you are connected to the console port of the router, you might notice that the router is either in ROMmon or Boot mode. These two modes are used for recovery and diagnostic procedures. If you do not see the usual router prompt, you should use these recommendations in order to proceed with the upgrade procedure installation:
  • The router boots in ROMmon mode, and this message appears when you issue the dir flash: command:
    rommon 1 >dir flash: 
    device does not contain a valid magic number 
    dir: cannot open device "flash:" 
    rommon 2 >
    This error message displays when the Flash is empty or the filesystem is corrupted. Refer to Xmodem Console Download Procedure Using ROMmonfor more information.
    Note: You might also need to consult the Boot Failure procedures specific to your platform. Choose your platform from the Product Support Selector in order to locate these procedures. Look in the Troubleshooting section of each document.
  • The router boots in boot mode with these messages on the console:
    router(boot)>
    device does not contain a valid magic number
    boot: cannot open "flash:"
    boot: cannot determine first file name on device "flash:"
    These error messages display in the console output when the Flash is empty or when the file system is corrupted. Copy a valid image on the Flash as described in the procedures provided in this document.
    Note: You might also need to consult the Boot Failure procedures specific to your platform. Choose your platform from the Product Support Selector in order to locate these procedures. Look in the Troubleshooting section of each document.

Software Installation and Upgrade Procedures

This section covers these topics:

Step 1: Select a Cisco IOS Software Image

Your first step in the upgrade procedure is to select the correct Cisco IOS software release and feature set. This step is very important, and these factors can affect the decision for which Cisco IOS you should select:
  • Memory requirement: The router should have sufficient disk or flash memory to store the Cisco IOS. The router should also have sufficient memory (DRAM) to run the Cisco IOS. If the router does not have sufficient memory (DRAM), the router will have boot problems when it boots through the new Cisco IOS.
  • Interfaces and modules support: You must ensure that the new Cisco IOS supports all the interfaces and modules in the router.
  • Software feature support: You must ensure that the new Cisco IOS supports the features used with the old Cisco IOS.
Refer to How to Choose a Cisco IOS Software Release for information on how to select the correct software version and feature set.

Step 2: Download the Cisco IOS Software Image to the TFTP Server

Download the Cisco IOS Software image onto your workstation or PC from the Download Software Area (registered customers only) .

Step 3: Identify the File System to Copy the Image

The file system type "flash" or "disk" is used to store the Cisco IOS image. The show file system command output shows the list of file systems available on the router. The common "disk/flash" file systems supported in Cisco routers have prefixes such as flash:, slot0:, slot1:, disk0: and disk1:. It should have sufficient space to store the Cisco IOS image. You can use the show file system or the dir file_system command in order to find the free space.
2600#show file system
File Systems:

     Size(b)     Free(b)      Type  Flags  Prefixes
           -           -    opaque     rw   archive:
           -           -    opaque     rw   system:
       29688       20571     nvram     rw   nvram:
           -           -    opaque     rw   null:
           -           -   network     rw   tftp:
           -           -    opaque     ro   xmodem:
           -           -    opaque     ro   ymodem:
*   49807356    20152636     flash     rw   flash:
           -           -    opaque     wo   syslog:

2800#show file system
File Systems:

     Size(b)     Free(b)      Type  Flags  Prefixes
           -           -    opaque     rw   archive:
           -           -    opaque     rw   system:
           -           -    opaque     rw   null:
           -           -   network     rw   tftp:
           -           -    opaque     ro   xmodem:
           -           -    opaque     ro   ymodem:
*   64016384    15470592      disk     rw   flash:#
      245752      239218     nvram     rw   nvram:
           -           -    opaque     wo   syslog:
 
3600#show file system
File Systems:

     Size(b)     Free(b)      Type  Flags  Prefixes
           -           -    opaque     rw   archive:
           -           -    opaque     rw   system:
      129016      126071     nvram     rw   nvram:
           -           -    opaque     rw   null:
           -           -   network     rw   tftp:
*   33030140    20511708     flash     rw   flash:
    16777212    16777212     flash     rw   slot0:
    16515068     8038516     flash     rw   slot1:
           -           -    opaque     rw   xmodem:
           -           -    opaque     rw   ymodem:
3700#show file system
File Systems:

     Size(b)     Free(b)      Type  Flags  Prefixes
           -           -    opaque     rw   archive:
           -           -    opaque     rw   system:
       57336       51389     nvram     rw   nvram:
           -           -    opaque     rw   null:
           -           -   network     rw   tftp:
           -           -    opaque     ro   xmodem:
           -           -    opaque     ro   ymodem:
*   63881216    22765568      disk     rw   flash:#
    31932416    31932416      disk     rw   slot0:#
           -           -    opaque     wo   syslog:
 

Step 4: Prepare for the Upgrade

You should consider these items before you upgrade the Cisco IOS:
  • If the router has sufficient memory (flash, slot or disk), you can store both the old Cisco IOS and the new Cisco IOS. You can boot the router in the ROMMON mode and boot the old Cisco IOS in case of boot failure with new Cisco IOS. This method saves time if you must roll back the Cisco IOS.
  • Backup the configuration from the router because some of the Cisco IOS releases add default configurations. This newly added configuration may conflict with your current configuration. Compare the configuration of the router after the Cisco IOS upgrade with the configuration backed up before the upgrade. If there are differences in the configuration, you must ensure they do not affect your requirements.

Step 5: Verify that the TFTP Server has IP Connectivity to the Router

The TFTP server must have a network connection to the router and must be able to ping the IP address of the router targeted for a TFTP software upgrade. In order to achieve this connection, the router interface and the TFTP server must have an IP address in the same range or a default gateway configured.
Check the IP address of the TFTP server in order to verify this configuration.

Step 6: Copy IOS Image to the Router

Now that you have IP connectivity and can ping between the computer that acts as a TFTP server and the router, you can copy the Cisco IOS Software image into the Flash.
Note: Before you copy the image, ensure that you have started the TFTP server software on your PC, and that you have the file name mentioned in the TFTP server root directory. Cisco recommends that you keep a backup of the router and access server configuration before you upgrade. The upgrade does not affect the configuration, which is stored in nonvolatile RAM [NVRAM]. However, this situation might happen if the right steps are not followed properly.
Note:  In this section you are presented with three examples that describe how to copy the Cisco IOS image. You can use any one of these methods in order to copy the image.

Example 1: Copy the image to flash: from TFTP server

Upgrade the new image from a TFTP server. Use the copy tftp: flash: command in order to copy the image from TFTP server to the flash.
2600>enable
Password:xxxxx 
2600#copy tftp: flash:
Address or name of remote host []? 10.10.10.2

!--- 10.10.10.2 is the IP address of the TFTP server

Source filename []? c2600-adventerprisek9-mz.124-12.bin
Destination filename [c2600-adventerprisek9-mz.124-12.bin]?y 
Accessing tftp://10.10.10.2/c2600-adventerprisek9-mz.124-12.bin...
Erase flash: before copying? [confirm]y 

!--- If there is not enough memory available, erase the Flash.


!--- If you have sufficient memory you can type n and press enter

Erasing the flash filesystem will remove all files! Continue? [confirm]y
Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeee ...erased
Erase of flash: complete
Loading c2600-adventerprisek9-mz.124-12.bin from 10.10.10.2 (via Ethernet0/0): !!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 29654656/49807356 bytes]

Verifying checksum...  OK (0xAC8A)
29654656 bytes copied in 56.88 secs (80383 bytes/sec)
The copy process takes several minutes. This time differs from network to network. When the copy process is in progress, messages are displayed that indicate which file has been accessed.
The exclamation point "!" indicates that the copy process is in progress. Each exclamation point indicates that ten packets have transferred successfully. A checksum verification of the image occurs after the image is written to Flash memory.

Example 2: Copy the image to slot1: from TFTP server

Upgrade the new image from a TFTP server. If you choose the slot1: file systems, use the copy tftp: slot1: command in order to copy the image from TFTP server to slot1.
3600#copy tftp: slot1:
Address or name of remote host []? 171.68.173.10

!--- 171.68.173.10 is the IP address of the TFTP server

Source filename []? c3640-i-mz.122-7b.bin
Destination filename [c3640-i-mz.122-7b.bin]?
Accessing tftp://171.68.173.10/c3640-i-mz.122-7b.bin...
Erase slot1: before copying? [confirm]n 

!--- You specify "n" because there is enough memory available.

Loading c3640-i-mz.122-7b.bin from 171.68.173.10 (via Ethernet1/0): 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!
[OK - 5996844/11993088 bytes]

Verifying checksum...  OK (0x13F0)
5996844 bytes copied in 67.708 secs (89505 bytes/sec)
3600#
The copy process takes several minutes. This time differs from network to network. When the copy process is in progress, messages are displayed that indicate which file has been accessed.
The exclamation point "!" indicates that the copy process is in progress. Each exclamation point indicates that ten packets have transferred successfully. A checksum verification of the image occurs after the image is written to Flash memory.

Example 3: Copy the IOS image to flash: from another router

You can configure a router as TFTP server. If you choose the flash: file systems, use the copy tftp: flash: command in order to copy the image from TFTP server to flash.
Router-tftp(config)#tftp-server flash:c7200-a3js-mz.122-15.T16.bin


!--- Router-tftp is configured as the TFTP server.

7200#copy tftp: flash:
Address or name of remote host []? 172.22.1.84
Source filename []? c7200-a3js-mz.122-15.T16.bin
Destination filename [c7200-a3js-mz.122-15.T16.bin]?
Accessing tftp://172.22.1.84/c7200-a3js-mz.122-15.T16.bin...
Erase flash: before copying? [confirm]n
Loading c7200-a3js-mz.122-15.T16.bin from 172.22.1.84 (via GigabitEthernet0/1):
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 19187152 bytes]

Verifying checksum...  OK (0x15C1)
19187152 bytes copied in 482.920 secs (39732 bytes/sec)

Step 7: Verify the Cisco IOS Image in the File System

Verify the image in the file system.
2600#dir flash:

Directory of flash:/

    1  -rw-    29654656                    <no date>  c2600-adventerprisek9-mz.1
24-12.bin

49807356 bytes total (20152636 bytes free)

2600#verify flash:c2600-adventerprisek9-mz.124-12.bin

Verifying file integrity of flash:c2600-adventerprisek9-mz.124-12.bin...........
................................................................................

................................................................................
.............................Done!
Embedded Hash   MD5 : 1988B2EC9AFAF1EBD0631D4F6807C295
Computed Hash   MD5 : 1988B2EC9AFAF1EBD0631D4F6807C295
CCO Hash        MD5 : 141A677E6E172145245CCAC94674095A

Signature Verified
Verified flash:c2600-adventerprisek9-mz.124-12.bin
Refer to System Message Guide for information about different %SIGNATURE error messages and the necessary action to be taken.

Step 8: Verify the Configuration Register

config-register value—Use the show version command in order to check this value. The value is displayed in the last line of the show version output. It should be set to 0x2102.
2600#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z. 
2600(config)#config-register 0x2102 
2600(config)#^Z

Step 9: Verify the Boot Variable

IOS image in the flash—If the first file in the Flash is not the Cisco IOS Software image, but a configuration file, or something else, then you need to configure aboot system statement in order to boot the specified image. Otherwise, the router tries to boot with the configuration file or the first file in the Flash, which does not work. If there is only one file in the Flash and it is the Cisco IOS Software image, this step is not necessary.
2600#show run | include boot
boot system flash:c2600-adventerprisek9-mz.123-21.bin

2600#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z. 
2600(config)#no boot system
2600(config)#boot system flash:c2600-adventerprisek9-mz.124-12.bin
2600(config)#^Z
IOS image in the slot1—The boot variable that points to the old Cisco IOS needs to be removed first, and then the router needs to be configured to boot through the new Cisco IOS.
 3600# show run | include boot
boot system slot1:c3640-i-mz.120-22.bin

3600#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z. 
3600(config)#no boot system
3600(config)#boot system  slot1:c3640-i-mz.122-7b.bin
3600(config)#^Z

Step 10: Save the Configuration and Reload the Router

Save the configuration, and reload the Router.
2600# write memory
2610# reload
Proceed with reload? [confirm]
Jan 24 20:17:07.787: %SYS-5-RELOAD: Reload requested by console. Reload Reason:
Reload Command.

Step 11: Verify the Cisco IOS Upgrade

Verify that the router runs with the proper image.
After the reload is complete, the router should run the desired Cisco IOS Software image. Use the show version command in order to verify the Cisco IOS software.
2600#show version
00:22:25: %SYS-5-CONFIG_I: Configured from console by console
Cisco IOS Software, C2600 Software (C2600-ADVENTERPRISEK9-M), Version 12.4(12),
RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2006 by Cisco Systems, Inc.
Compiled Fri 17-Nov-06 11:18 by prod_rel_team

ROM: System Bootstrap, Version 12.2(8r) [cmong 8r], RELEASE SOFTWARE (fc1)

2610 uptime is 22 minutes
System returned to ROM by reload
System image file is "flash:c2600-adventerprisek9-mz.124-12.bin"
Here is the show version output of 3600 router that has Cisco IOS in the slot1:
3600#show version
Cisco Internetwork Operating System Software
IOS (tm) 3600 Software (C3640-I-M), Version 12.2(7b), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-2002 by cisco Systems, Inc.
Compiled Mon 04-Mar-02 20:23 by pwade
Image text-base: 0x600089A8, data-base: 0x60A6A000

ROM: System Bootstrap, Version 11.1(19)AA, EARLY DEPLOYMENT RELEASE SOFTWARE (f)

Router uptime is 2 minutes
System returned to ROM by reload
System image file is "slot1:c3640-i-mz.122-7b.bin"

cisco 3640 (R4700) processor (revision 0x00) with 59392K/6144K bytes of memory.

Processor board ID 10524422
R4700 CPU at 100Mhz, Implementation 33, Rev 1.0
Bridging software.
X.25 software, Version 3.0.0.
4 Ethernet/IEEE 802.3 interface(s)
DRAM configuration is 64 bits wide with parity disabled.
125K bytes of non-volatile configuration memory.
4096K bytes of processor board System flash (Read/Write)
20480K bytes of processor board PCMCIA Slot0 flash (Read/Write)
20480K bytes of processor board PCMCIA Slot1 flash (Read/Write)

Configuration register is 0x2102

No comments: