As a CCENT or CCNA candidate (if you’re taking the combined exam), you’re expected to understand the configuration register. The configuration register can be used to change a routers behavior in the following ways:
- Change how the router boots (into ROMmon, NetBoot and so on..)
- Control specific options while booting such as ignoring the saved configuration or disabling boot messages.
- Change the baud rate for a terminal emulation session
You can view the configuration registers current value by issuing the
show version command as seen below:
Router>show version Cisco IOS Software, 3700 Software (C3725-ADVSECURITYK9-M), Version 12.4(25d), RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2010 by Cisco Systems, Inc. Compiled Wed 18-Aug-10 07:55 by prod_rel_team ROM: ROMMON Emulation Microcode ROM: 3700 Software (C3725-ADVSECURITYK9-M), Version 12.4(25d), RELEASE SOFTWARE (fc1) Router uptime is 0 minutes System returned to ROM by unknown reload cause - suspect boot_data[BOOT_COUNT] 0x0, BOOT_COUNT 0, BOOTDATA 19 System image file is "tftp://255.255.255.255/unknown" This product contains cryptographic features and is subject to United States and local country laws governing import, export, transfer and use. Delivery of Cisco cryptographic products does not imply third-party authority to import, export, distribute or use encryption. Importers, exporters, distributors and users are responsible for compliance with U.S. and local country laws. By using this product you agree to comply with applicable laws and regulations. If you are unable to comply with U.S. and local laws, return this product immediately. A summary of U.S. laws governing Cisco cryptographic products may be found at: http://www.cisco.com/wwl/export/crypto/tool/stqrg.html If you require further assistance please contact us by sending email to email@example.com. Cisco 3725 (R7000) processor (revision 0.1) with 124928K/6144K bytes of memory. Processor board ID FTX0945W0MY R7000 CPU at 240MHz, Implementation 39, Rev 2.1, 256KB L2, 512KB L3 Cache 2 FastEthernet interfaces DRAM configuration is 64 bits wide with parity enabled. 55K bytes of NVRAM. 16384K bytes of ATA System CompactFlash (Read/Write) Configuration register is 0x2142 Router>
The configuration register value is the last bit of information seen at the very bottom of the output. The default value from the factory is 0x2102. What do these numbers mean and who to we use them?
What Do These Numbers Mean?
The numbers you se followed by the 0x are hexadecimal numbers. These numbers expand to a 16-bit value that can control the various aspects of a routers boot routine as discussed previously.
The following table details a few important values. Full details can be found in this article.
|06||0x0040||Ignore NVRAM contents. You would use this for password recovery.|
|08||0x0100||Break disabled. You would use this to disable the break command within 60 seconds of boot. If not configured you can issue a break at any time, halting the operating system and placing you into ROMMON.|
|5,11,12||0x0020, 0x0800, 0x1000||Console line speed. You could use this to change the speed of the console, however default values are sufficient at 9600.|
How to Use the Configuration Register.
One important way you can use the configuration register is to perform a password recovery if you get locked out. Assuming you can’t access the router because the password is unknown you can reboot the router and then within 60 seconds of the boot process issue a break sequence. The break sequence is different depending on the terminal emulator you are using, but its usually something like ctrl + b or ctrl+escape. Once you are presented with the rommon prompt you can issue the
confreg 0x2142 command followed by the
reset command. This will reboot the router, this time ignoring the startup-config file in NVRAM. you should note that it isn’t deleting the file, it’s just ignoring it. You still need to reset your password. The way to do this is to access privilege exec mode, copy the startup-config back into running-config, change the password, and then save. After saving you can reset the configuration register in global config mode by issuing the
config-register 0x2102 command. Otherwise the router will ignore the config again the next time it reboots.