The basic boot sequence for a Cisco router is:
Step 1: The router performs a power-on self-test (POST) to discover and verify the hardware.
Step 2: The router loads and runs bootstrap code from ROM.
Step 3: The router finds the IOS or other software and loads it.
Step 4: The router finds the configuration file and loads it into running config.
All routers attempt all four steps each time that the router is powered on or reloaded. The POST code and functions cannot be changed by the router administrator. The location of the bootstrap code, the IOS to load, and the configuration file can be changed by the administrator-but you almost always use the default location for the bootstrap code (ROM) and for the initial configuration (NVRAM). So, the location of IOS or other software is the only part that typically is changed. Three categories of operating systems can be loaded into the router:
o The full-function IOS image, which is typically located in Flash memory but can also be located on a TFTP server. This is the normal, full-feature IOS used in production;
o A limited-function IOS that resides in ROM; and provides basic IP connectivity when Flash memory is faulty and you need IP connectivity to copy a new IOS into Flash memory. This limited-function IOS is called RXBOOT mode.
o A different non-IOS operating system that is also stored in ROM. This operating system, called ROM Monitor (ROMMON) mode, is used for low-level debugging and for password recovery. Unless you are performing password recovery, you would seldom use ROMMON mode.
The configuration register tells the router whether to use a full-featured IOS, ROMMON, RXBOOT mode. The configuration register is a 16-bit software register in the router, and its value is set using the configregister global configuration command. The boot field is the name of the low-order 4 bits of the configuration register. This field can be considered a 4-bit value, represented as a single hexadecimal digit. If the boot field is hex 0, ROMMON is loaded. If the boot field is hex 1, RXBOOT mode is used. For anything else, it loads a full-featured IOS.