IOS Upgrade

According to Guy Almes, “There are three kinds of death in this world.  There’s heart death, there’s brain death, and there’s being off the network.”

Over the past couple of weeks I’ve been forced to upgrade and downgrade the IOS for my core switch several times because of a bug in the code.

I’ve been on pins and needles the entire time since at any time a simple interface reset would cause the switch to reboot, bringing my entire network to a screetching halt.  Obviously that is not a good thing, but all I could do was wait on Cisco to come through with a new IOS that should fix the bug.

Unfortunately, they came through too late.  Someone rebooted a server that was directly connected to the core switch, which bounced the interface, which in turn bounced the core.  Of course, it was in the middle of the morning, right about the time the big monthly board meeting was about to begin.

Perfect.

When I saw the network drop, I immediately ran into the computer room to check on the switch to confirm if what I feared had truly happened.  With the answer staring me in the face, I left to go and report what happened to my managment.  I didn’t have to go far.  The second I left the computer room, the assistant CIO was walking up.  I got halfway through the explanation when the CIO joined us, so I started over, apologized profusely, and promised to follow up with Cisco to try and light some fires under their behinds.

I was assured they were escalating the issue and would keep me informed.  This morning I get an email stating that there was a public build already available since the beginning of October that had somehow been missed.

Nuts! 

Information that could have been usful a few days ago, but alas, that point is moot.  Now I’ve got a build and will be implementing tonight.  Here’s hoping for more success than the last one.

Well, at least I’ve learned a few things, that I am going to share.  Upgrading the IOS on the Cisco Catalyst 6500 series switch is not that difficult.  Here’s how it’s done:

  1. Download the appropriate IOS .bin file from CCO on Cisco.com.  Your sales rep or engineer can help you identify the correct one if you are unsure.  There are hundreds of versions that have different functionality, so its important to choose the correct one for your system and needs (and that you are licensed for, too)
  2. Use a TFTP server to copy the IOS .bin onto the switch’s bootdisk (I use tftpd32).  The bootdisk location will depend on your model of switch and the supervisor cards installed.  In my case, it is a 6509 with redundant Supervisor 720s installed.  My command was:  copy tftp: sup-bootdisk:, then enter the appropriate information at the prompts.
  3. After the file has copied, type dir sup-bootdisk: to verify the file is present and in the same location as the old IOS.
  4. At this point, you’ll need to verify the integrity of the IOS (that it is not corrupted or altered in some way).  Use the command:  verify sup-bootdisk:<file-name> This will run and MD5 checksum and let you know if the embedded MD5 hash matches the calculated MD5 hash.  It also displays the hash from CCO, which you can use to compare with the hash you saw on the download page, to be sure.
  5. If this all checks out, you can copy the image onto the standby supervisor, if you have redundant supes.  Use the command:  copy sup-bootdisk:<file-name> slavesup-bootdisk:
  6. Next, remove the old IOS image configuration and set the switch to boot from the new one.  Here’s how:
    • Enter global configuration mode, config t
    • no boot system flash sup-bootdisk:<old-file-name>
    • boot system flash sup-bootdisk:<new-file-name>
  7. Verify the config with sh boot then copy run start, if correct.
  8. Finally, reload to reboot the switch and apply the new boot image.  Once it’s rebooted, you can verify the current applied IOS with the sh ver command.

Hope this helps someone.

Leave a comment