Cisco Router Boot Sequence
Cisco routers can boot Cisco IOS software from these locations:
1. Flash memory
2. TFTP server
3. ROM (not full Cisco IOS)
Multiple source options provide flexibility and fallback alternatives.
Locating the Cisco IOS Software
Default boot sequence for Cisco IOS software:
1. NVRAM
2. Flash (sequential)
3. TFTP server (network boot)
4. ROM (partial IOS)
Note: boot system commands can be used to specify the primary IOS source and
fallback sequences.
Booting up the router and locating the Cisco IOS
1. POST (power on self test)
2. Bootstrap code executed
3. Check Configuration Register value (NVRAM) which can be modified using the
config-register command
0 = ROM Monitor mode
1 = ROM IOS
2 - 15 = startup-config in NVRAM
4. Startup-config file: Check for boot system commands (NVRAM)
If boot system commands in startup-config
a. Run boot system commands in order they appear in startup-config
to locate the IOS
b. [If boot system commands fail, use default fallback sequence to
locate the IOS (Flash, TFTP, ROM)?]
If no boot system commands in startup-config use the default fallback
sequence in locating the IOS:
a. Flash (sequential)
b. TFTP server (netboot)
c. ROM (partial IOS) or keep retrying TFTP depending upon router
model
5. If IOS is loaded, but there is no startup-config file, the router
will use the default fallback sequence for locating the IOS and then
it will enter setup mode or the setup dialogue.
6. If no IOS can be loaded, the router will get the partial IOS version
from ROM.
Default (normal) Boot Sequence
Power on Router - Router does POST - Bootstrap starts IOS load - Check
configuration register to see what mode the router should boot up in (usually
0x102 to 0x10F to look in NVRAM) - check the startup-config file in NVRAM for
boot-system commands (normally there aren't any) - load IOS from Flash.
Boot System Commands:
boot from FLASH memory
router(config)# boot system flash IOS-filename
boot from a TFTP server
router(config)# boot system tftp IOS-filename tftp-server-ip-address
boot from system ROM
router(config)# boot system rom
Configuration Register Command
router(config)# config-register 0x10x (where that last x is 0-F in hex)
When the last x is:
0 = boot into ROM Monitor mode
1 = boot the ROM IOS
2 - 15 = look in startup config file in NVRAM
--------------------------------------------------------------------------------
Configuration Register - Bootstrap Options:
router(config)# config-register 0x2100 - ROM Monitor Mode
router(config)# config-register 0x2101 - ROM boot
router(config)# config-register 0x2102 - Boot from NVRAM