Cisco IOS Boot System Image

Hello Hany

When a Cisco router boots up, it has to load its IOS image. By default the router first looks for boot system commands in startup-config file to find out where to locate the image. If it finds these commands, it will run boot system commands in order they appear in startup-config to locate the IOS. If not, the IOS image is loaded from Flash. If the IOS is not found in Flash, the bootstrap can try to load the IOS from TFTP server or from ROM (ROMMON).

There is no configuration register that tells the router to search for the IOS image from a TFTP server. Click on this link to see a list of configuration register values for Cisco routers and what they do.

Switches follow a similar but not identical process. During bootup, switches will first search for an IOS image based on the BOOT environment variable which is set using the boot system global configuration mode command similar to routers. If this variable is not set, the switch only searches its own flash file system by performing a recursive, depth-first search throughout all of the directory structures found there. If an IOS is still not found, the switch will run a low level IOS stored in its ROM called Rom Monitor or ROMMON. It does not search a TFTP server for the IOS.

If however you want to force your switch to use an IOS image that is stored on a TFTP server on the network during bootup, you can configure the BOOT environment variable in order to do so. Specifically, you can configure the command boot system tftp filename [ip-address] so that at each bootup, the IOS image found there will be downloaded and loaded into RAM. More information about this command can be found under the command boot system at Cisco’s command reference.

I hope this has been helpful!

Laz