IOS Upgrade on a Cisco ASR

I was recently tasked with upgrading all the IOS on our ASRs as we move over to running PFRv3.  Like most any other cisco router upgrade the process is pretty straight forward but there are a few caveats in the syntax used on the ASRs.  For those that may have never performed a IOS upgrade I will run through the entire process.

Check the current IOS Version

Like any upgrade you need to know where you are starting to see what is going to be needed to get you to where you want to be.  If you are jumping several versions of major code then you may need to upgrade to an intermediate code in between to get to the final version you wish to run.

Run a show version

Running the “show version” command will provide you the current system image file that your ASR is running.

Show Version

Copy IOS to ASR flash memory

If the version of IOS code that you wish to use is not already on the router then you will need to copy it over.  The easiest and quickest way is through TFTP.   By default ASRs have the TFTP source set to G0. In order to successfully TFTP the new IOS image onto the ASR you need to use that port , remove the TFTP source command or change the source to a loopback or port that connects to the network that your TFTP server is on.

TFTP new IOS image

ROUTER#copy tftp: flash:
Address or name of remote host []? <IP address of your TFTP server>
Source filename []? <Full filename of the new IOS image.  Include the “.bin”>
Destination filename []? <Name to save theIOS image as.  Can press enter to use Source filename.>


Configure ASR to boot from the new code

Once you have the version of IOS code you wish to use loaded onto the ASR you need to set the router to use the new image.  Unlike other cisco routers you need to make sure to specify the “bootflash:” in order for your ASR to find the new code.  If you do not specify “bootflash:” your device will default back to the first IOS image it can find in its flash memory.  Remember to save your configuration before reloading. Once it reloads run another show version to ensure the new code is being used.

Set new boot system

ROUTER#conf t
ROUTER (config)#no boot system
ROUTER (config)#boot system flash bootflash:<New IOS Filename>
ROUTER#write memory


Once your reload has complete run another “show version” to verify that the ASR is now running on the IOS you specified.

Leave a Reply

Your email address will not be published. Required fields are marked *