Skip to content

How to do an IOS Upgrade via TFTP

There are many free TFTP server sortware out there, just install one.

First of all, make sure you have IP reachablity to the TFTP Server. You can do that via Ping…

Then check whether TCP port 69 is open. Usually it is not the case, but when it comes to troubleshooting, it is the first thing to check after a succesful Ping test.

Jump onto the router you are going to do the IOS upgrade.

Make sure the IOS you are going to replace it with is compatible with your router & also you have the necessary Flash / RAM.

If your Flash is big enough to have more than two IOS images, then you can straight away go and download it from the TFTP Server.

If you are going to have two IOS images in flash, you need to specify the router which image to load on boot. It can be done via the following command…

boot system flash IMAGE_NAME_HERE


Router(config)#boot system flash c2691-adventerprisek9_ivs-mz.124-15.T9.bin

If the flash is not big enough to have both images, you need to delete the old image.

I usually use the command show flash: then delete the content via the command delete flash:

You can see an example here…

Router#show flash: all
-#- --length-- -----date/time------ path
1     32293924 Mar 1 1993 00:23:52 +00:00 c2691-adventerprisek9-mz.124-5a.bin
31739904 bytes available (32296960 bytes used)
Router#delete flash:
Delete filename []? c2691-adventerprisek9-mz.124-5a.bin
Delete flash:c2691-adventerprisek9-mz.124-5a.bin? [confirm]
Router#show flash:
No files on device
64036864 bytes available (0 bytes used)`

Now copy the IOS image from the TFTP Server

Copy tftp: flash:

Example here…

Router#copy tftp: flash:
Address or name of remote host []?
Source filename []? c2691-adventerprisek9_ivs-mz.124-15.T9.bin
Destination filename [c2691-adventerprisek9_ivs-mz.124-15.T9.bin]?
Accessing tftp://
Loading c2691-adventerprisek9_ivs-mz.124-15.T9.bin from (via FastEthernet0/1):  !!!!!!!!!!`

Sometimes the router might ask you to erase Flash: but I usually do that…

Reload the router and it should be able to run the new IOS Image.

If you happen to have more than one IOS on Flash: You can hardcode which version of IOS to load with the global config command.

Router(config)#boot system flash c2691-adventerprisek9_ivs-mz.124-15.T9.bin
comments powered by Disqus