Configuration
Register
Routers use a 16-bit software configuration register, with which you can set
specific system parameters. Settings for the software configuration register are
written into nonvolatile random access memory (NVRAM).
Some reasons for changing the software configuration
register settings are as follows:
- To set and display the configuration register value
- To force the system into the ROM monitor or boot ROM
- To select a boot source and default boot filename
- To enable or disable the Break function
- To control broadcast addresses
- To set the console terminal baud rate
- To load operating software from Flash memory
- To enable booting from a Trivial File Transfer Protocol (TFTP) server
- To recover a lost password
- To manually boot the system using the boot command at the bootstrap program
prompt.
- To force the switch router to boot automatically from the system bootstrap
software (boot image) or from its default system image in onboard Flash memory,
and read any boot system commands that are stored in the configuration file in
NVRAM
Boot Field
| Config Register # |
2 |
1 |
0 |
2 |
| Bit Number |
15 14 13 12 |
11 10 9 8 |
7 6 5 4 |
3 2 1 0 |
| Binary |
0 0 1 0 |
0 0 0 1 |
0 0 0 0 |
0 0 1 0 |
The lowest four bits of the configuration register (bits 3, 2, 1, and 0) form
the boot field. The order in which the switch/router looks for system bootstrap
information depends on the boot field setting in the configuration register.
When the boot field is set to either 0 or 1 (0-0-0-0 or 0-0-0-1), the system
ignores any boot instructions in the system configuration file and the following
occurs:
- When the boot field is set to 1 (the factory default), you will boot from an
IOS image stored in ROM.
- When the boot field is set to 0, you must boot the operating system manually
by giving a boot command to the system bootstrap program, or ROM
monitor.
Boot Command
You can enter the boot command only, or include additional boot
instructions with the command, such as the name of a file stored in Flash memory
or a file that you specify for booting from a network tftp server.
If you use the boot command without specifying a file or any other
boot instructions, the system boots from the default Flash image (the first
image in onboard Flash memory). Otherwise, you can instruct the system to
boot from a specific Flash image (using the boot system flash filename
command), or boot from a network server by sending broadcast TFTP requests
(using the boot system filename command), or by sending a direct
TFTP request to a specific server (using the boot system filename
ip address command).
You can also use the boot command to boot images stored in the
Personal Computer Memory Card International Association (PCMCIA) Flash memory
cards in the route processor. If you set the boot field to any bit pattern
other than 0 or 1, the system uses the resulting number to form a filename for
booting over the network. The system uses the filename to invoke the
system image by booting over the net. However, if the configuration file
contains any boot instructions, the system uses those boot instructions instead
of the filename it computed from the configuration register settings.
You must set the boot field for the boot functions you require. For
more detailed information on the software configuration register features, refer
to the following sections.
Changing the Software Configuration Register
Settings for the software configuration register are written into NVRAM.
The factory default value for Cisco router is 0x2102.
You can change the default configuration register setting with the enabled
config-mode command config-register. Use a hexadecimal number as
the argument to this command. For example, the command
Router(config)# config-register 0x2100
configures the router to boot to ROM monitor mode.
A Summary of Boot Tasks and Their Register Values
To change the boot field and leave all the other bits set to their default
values, follow these guidelines:
- To enter the ROM monitor (primarily a programmer's environment), set the
configuration register value to 0x2100. This value sets the boot field
bits to 0-0-0-0.
- From the ROM monitor, boot the operating system manually by issuing the
boot command at the ROM monitor prompt.
- To boot the system automatically from ROM, set the configuration register to
0x2101. This value sets the boot field bits to 0-0-0-1.
- To configure the system to use the boot system commands in NVRAM, set the
configuration register to any value from 0x2102 to 0x210F. These values
set the boot field bits to 0-0-1-0 through 1-1-1-1.
Software Configuration Register
| Bit Number |
Hexadecimal |
Meaning |
| 00 to 03 |
0x0000 to 0x000F |
Boot field |
| 06 |
0x0040 |
Causes system software to ignore NVRAM contents |
| 07 |
0x0080 |
OEM bit enabled |
| 08 |
0x0100 |
Break disabled |
| 09 |
0x0200 |
Use secondary bootstrap |
| 10 |
0x0400 |
IP broadcast with all zeros |
| 11 to 12 |
0x0800 to 0x1000 |
Console line speed (default is 9600 baud) |
| 13 |
0x2000 |
Boot default Flash software if network boot fails |
| 14 |
0x4000 |
IP broadcasts do not have network numbers |
| 15 |
0x8000 |
Enable diagnostic messages and ignore NVRAM contents |
Configuration Register Boot Field
| Boot Field |
Meaning |
Used For: |
| 00 |
ROM monitor mode |
To boot to ROM monitor mode, set the configuration register to
2100. You must then manually boot the router with the b command. The router will
show a rommon> prompt. |
| 01 |
Boot image from ROM |
To boot an IOS image stored in ROM, set the configuration
register to 2101. The router will show the router(boot)> prompt.
|
| 02 to 0F |
Specifies a default boot filename |
Any value from 2102 to 210F tells the router to use the boot
commands specified in NVRAM. |
Understanding the Boot Field Commands
The lowest four bits of the software configuration register (bits 3, 2, 1,
and 0) form the boot field. The boot field specifies a number in
binary form which you have to convert to Hexadecimal to use in the configuration
register. If you set the boot field value to 0, you must boot the
operating system manually by entering the boot command at the bootstrap
prompt ( either > or for newer platforms rommon> ).
Definitions of the Boot Command Options
| Command |
Function |
| boot |
Boots the default system software from Flash memory. |
| boot flash [filename] |
Boots the first file in onboard Flash memory. The optional
filename argument is the name of the system image file to boot from onboard
Flash memory. |
| boot filename [ip address] |
Boots from server host using TFTP. IP address of the
TFTP server on which the system image resides. If omitted, this value defaults
to the IP broadcast address of 255.255.255.255 |
Changing Register Settings While Running System Software
To change the configuration register while running the system software,
follow these steps:
Step 1 At the privileged EXEC prompt (Router#), enter the
configure terminal command to enter global configuration mode.
Router#configure terminal
Router(config)#
Step 2 Set the contents of the configuration register by entering the
config-register value configuration command, where value
is a hexadecimal number preceded by 0x as in the following example:
Router(config)# config-register 0x2142
Step 3 Press Ctrl-Z to exit Global Configuration mode.
Step 4 Display the current configuration register value, which will be
used at the next system reload, by entering the show version command.
The value is displayed on the last line of the screen display, as in the
following example:
Configuration register is 0x2102 (will be 0x2142 at next reload)
Step 5 Restart the router.
Changes to the configuration register take effect only when the system
reloads.
Router# reload
Proceed with reload? [confirm]
%SYS-5-RELOAD: Reload Requested
|