The router Boot up Sequence
1. When a router is switched on a router first will perform the POST (Power on self test). The POST tests the hardware to verify that all components of the device are operational and present. For example, the POST checks for the different interfaces on the router. The POST is stored in and run from ROM (read-only memory).
2. The bootstrap then loads, this looks for and loads the Cisco IOS software. Part of this process is that the bootstrap checks to see if there is a configuration file in the NVRAM, if there is a configuration file then the bootstrap checks the file to see if it contains a “configuration-register” setting. This configuration-register contains information on where to boot the operating system. The default value of the configuration register is 0x2102 which tells the router to boot from Flash and to look for a configuration file in NVRAM. Another common configuration register setting is 0x2142 which tells the router to boot from Flash and to ignore the contents of NVRAM which is useful in password recovery.
The bootstrap is a program in ROM that is used to execute programs. The bootstrap program is responsible for finding where each IOS program is located and then loading the file. By default, the IOS software is loaded from flash memory in all Cisco routers.
3. If the configuration register is set correctly The IOS software looks for a valid configuration file stored in NVRAM, which is called a ‘startup-config’.
4. If a startup-config file is found in NVRAM, the router will load and run this file. The router is now operational. If a startup-config file is not in NVRAM, the router will start the optional setup-mode configuration called “system configuration dialog”upon bootup. You can skip this wizard style setup-mode and go directly to the command line interface if you wish. Most Network Administrators will skip this mode.
5. If any changes or modifications are made to a running router, these are stored in RAM. If you wish to save this running config to the startup config, you need to manually execute the command ‘copy running-config startup-config’ This will save your running (or current configuration) to NVRAM which will normally be loaded when the router starts up.