Cisco IOS/Firmware Upgrade
Keeping network devices up-to-date with the latest firmware is crucial for optimal performance, security, and compatibility. In this guide, we'll walk through the process of upgrading the firmware on Cisco switches to ensure they're running on the latest stable version.
Benefits of Firmware Upgrade:
- Enhanced Performance: New firmware often includes performance improvements, bug fixes, and feature enhancements, ensuring smoother operation of network devices.
- Security Enhancements: Firmware updates frequently address security vulnerabilities, helping to safeguard the network from potential threats and cyber attacks.
- Compatibility: Upgrading firmware ensures compatibility with newer protocols, software, and hardware components, enabling seamless integration within the network ecosystem.
Prerequisites and Additional Information:
Before proceeding with the firmware upgrade, ensure you have the following:
- New Firmware/IOS: It's essential to download the correct firmware version compatible with your Cisco switch model. Verify compatibility with Cisco's compatibility matrix or contact Cisco support if unsure.
- MD5 Value: Verify the MD5 checksum of the downloaded firmware file to ensure its integrity and authenticity. This step helps prevent corrupted or tampered firmware installations.
- TFTP Server: Set up a TFTP (Trivial File Transfer Protocol) server to facilitate the transfer of firmware files from your computer to the Cisco switch. Popular TFTP server software includes SolarWinds TFTP Server, TFTPD32, or Pumpkin TFTP.
- Windows PC: Install a TFTP server application on your Windows PC. Ensure that the TFTP server is configured correctly and accessible from the Cisco switch for file transfers, Perform a ping test between the switch and the TFTP server.
Steps to Upgrade Cisco Switch Firmware:
-
Download Latest Firmware: Obtain the latest stable version of IOS/firmware from the Cisco official website or the Cisco Software Center. Ensure that you select the appropriate firmware version compatible with your switch model and hardware specifications.
-
Check Free Space: Before initiating the firmware upgrade process, verify that there is sufficient free space available in the flash memory of the Cisco switch to accommodate the new firmware file. If the flash memory is limited, consider removing unnecessary files or old firmware versions to free up space.
-
Delete Old Firmware: If multiple firmware versions are stored in the flash memory, consider deleting older versions to streamline the upgrade process and avoid potential conflicts or errors during installation. Use the
delete flash:
command to remove unwanted files.delete flash:c2960-lanbasek9-mz.122-55.SE5.bin
-
Backup Current Configuration: Prior to performing any firmware modifications, it's advisable to create a backup of the switch's current configuration settings and existing firmware. This precautionary measure ensures that you can revert to the previous configuration in case of any unforeseen issues or complications during the upgrade process.
-
Copy New Firmware: Transfer the newly downloaded firmware file from the TFTP server to the Cisco switch's flash memory using the
copy tftp: flash:
command. Follow the on-screen prompts to specify the source (TFTP server) and destination (flash memory) paths for the file transfer. -
Verify MD5 Value: After the firmware file transfer is complete, verify the MD5 checksum of the uploaded firmware file to confirm its integrity and authenticity. Compare the calculated MD5 checksum with the published checksum provided by Cisco to ensure that the firmware file has not been altered or corrupted during transmission.
verify /md5 c2960-lanbasek9-mz.122-55.SE12.bin
-
Check the current boot path:After verifying the md5 value, Check the current boot path
-
Set Booting Image: Specify the newly uploaded firmware file as the default booting image for the Cisco switch using the
boot system flash:
command. This step ensures that the switch boots up using the upgraded firmware after a reboot.boot system flash:c2960-lanbasek9-mz.122-55.SE12.bin
-
Save Configuration and Reboot: Save the configuration changes to the switch's NVRAM (Non-Volatile Random Access Memory) using the
write memory
orcopy running-config startup-config
command. Finally, reboot the Cisco switch to apply the firmware upgrade and activate the new firmware version.
Conclusion:
By following these steps, you can successfully upgrade the firmware on Cisco switches, ensuring optimal performance, security, and compatibility. Regular firmware updates are essential to keep your network infrastructure robust and resilient against evolving threats and challenges.
This is the example of firmware upgrade
SW-01#show flash: Directory of flash:/ 2 -rwx 4120 Sep 6 2022 16:21:44 +05:30 multiple-fs 3 -rwx 9824980 Jan 5 2017 09:43:45 +05:30 c2960-lanbasek9-mz.122-55.SE10.bin 4 -rwx 1764 Mar 1 1993 05:31:55 +05:30 vlan.dat 5 -rwx 2082 Sep 6 2022 16:21:44 +05:30 private-config.text 6 -rwx 9813681 Jan 12 2013 10:06:16 +05:30 c2960-lanbasek9-mz.122-55.SE5.bin 7 drwx 192 Mar 1 1993 05:37:21 +05:30 c2960-lanbasek9-mz.122-44.SE6 550 -rwx 10055 Sep 6 2022 16:21:44 +05:30 config.text 32514048 bytes total (2446848 bytes free) SW-01# SW-01#show boot BOOT path-list : flash:c2960-lanbasek9-mz.122-55.SE10.bin Config file : flash:/config.text Private Config file : flash:/private-config.text Enable Break : no Manual Boot : no HELPER path-list : Auto upgrade : yes Auto upgrade path : NVRAM/Config file buffer size: 65536 Timeout for Config Download: 0 seconds Config Download via DHCP: disabled (next boot: disabled) SW-01# SW-01#copy running-config tftp: Address or name of remote host []? 192.168.10.10 Destination filename [SW-01-confg]? !! 11413 bytes copied in 1.325 secs (8614 bytes/sec) SW-01# SW-01#copy tftp: flash: Address or name of remote host []? 192.168.10.10 Source filename []? c2960-lanbasek9-mz.122-55.SE12.bin Destination filename [c2960-lanbasek9-mz.122-55.SE12.bin]? Accessing tftp://192.168.10.10/c2960-lanbasek9-mz.122-55.SE12.bin... Loading c2960-lanbasek9-mz.122-55.SE12.bin from 192.168.10.10 (via Vlan110): !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! [OK - 9827106 bytes] 9827106 bytes copied in 147.018 secs (66843 bytes/sec) SW-01# SW-01#verify /md5 c2960-lanbasek9-mz.122-55.SE12.bin .......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Done! verify /md5 (flash:c2960-lanbasek9-mz.122-55.SE12.bin) = 1504e5d9342eabf6f7b2376e94ace46f SW-01# SW-01#conf terminal Enter configuration commands, one per line. End with CNTL/Z. SW-01(config)# SW-01(config)#boot system flash:c2960-lanbasek9-mz.122-55.SE12.bin SW-01(config)#exit SW-01# SW-01# SW-01#show boot BOOT path-list : flash:c2960-lanbasek9-mz.122-55.SE12.bin Config file : flash:/config.text Private Config file : flash:/private-config.text Enable Break : no Manual Boot : no HELPER path-list : Auto upgrade : yes Auto upgrade path : NVRAM/Config file buffer size: 65536 Timeout for Config Download: 0 seconds Config Download via DHCP: disabled (next boot: disabled) SW-01# SW-01#wr Building configuration... [OK] SW-01# SW-01#relo SW-01#reload Proceed with reload? [confirm] Check the Firmware Vension after reboot SW-01#show version Cisco IOS Software, C2960 Software (C2960-LANBASEK9-M), Version 12.2(55)SE12, RELEASE SOFTWARE (fc2) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2017 by Cisco Systems, Inc. Compiled Thu 28-Sep-17 02:53 by prod_rel_team Image text-base: 0x00003000, data-base: 0x01900000 ROM: Bootstrap program is C2960 boot loader BOOTLDR: C2960 Boot Loader (C2960-HBOOT-M) Version 12.2(44)SE6, RELEASE SOFTWARE (fc1) SW-01 uptime is 20 minutes System returned to ROM by power-on System restarted at 10:32:38 IST Fri May 9 2022 System image file is "flash:c2960-lanbasek9-mz.122-55.SE12.bin"