Cisco IOS CLI
Cisco IOS has three command modes, each with access to different command sets:
User modeThis is the first mode a user has access to after logging into the router. The user mode can be identified by the > prompt following the router name. This mode allows the user to execute only the basic commands, such as those that show the system's status. The system cannot be configured or restarted from this mode.
Privileged modeThis mode allows users to view the system configuration, restart the system, and enter configuration mode. It also allows all the commands that are available in user mode. Privileged mode can be identified by the # prompt following the router name. The user mode enable command tells IOS that the user wants to enter privileged mode. If an enable password or enable secret password has been set, the user needs to enter the correct password or secret to be granted access to privileged mode. An enable secret password uses stronger encryption when it is stored in the configuration and, therefore, is safer. Privileged mode allows the user to do anything on the router, so it should be used with caution. To exit privileged mode, the user executes the disable command.
Configuration modeThis mode allows users to modify the running system configuration. To enter configuration mode, enter the command configure terminal from privileged mode. Configuration mode has various submodes, starting with global configuration mode, which can be identified by the (config)# prompt following the router name. As the configuration mode submodes change depending on what is being configured, the words inside the parentheses change. For example, when you enter interface configuration submode, the prompt changes to (config-if)# following the router name. To exit configuration mode, the user can enter end or press Ctrl-Z.
Note that in these modes, entering the context-sensitive command ? at any point shows the available commands at that level. The ? can also be used in the middle of a command to show possible completion options. Example 4-2 shows the use of the ? command to display the commands available within a given command mode.
Example 4-2 Using Context-Sensitive Help
Router>? Exec commands: access-enable Create a temporary Access-List entry access-profile Apply user-profile to interface clear Reset functions ...
The following steps introduce you to the commands used to change command mode, view system information, and configure a password. Real CLI output from a Cisco 3640 router running Cisco IOS software is shown.
Step 1 Enter enabled mode by entering enable and pressing Enter:
Router> enable Router#
Step 2 To see which version of IOS is running on the system, enter the show version command:
Router# show version Cisco Internetwork Operating System Software IOS (tm) 3600 Software (C3640-IS-M), Version 12.2(10), RELEASE SOFTWARE (fc2) Copyright (c) 1986-2002 by Cisco Systems, Inc. Compiled Mon 06-May-02 23:23 by pwade Image text-base: 0x60008930, data-base: 0x610D2000 ROM: System Bootstrap, Version 11.1(20)AA2, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1) Router uptime is 47 minutes System returned to ROM by reload System image file is "slot0:c3640-is-mz.122-10.bin" cisco 3640 (R4700) processor (revision 0x00) with 94208K/4096K bytes of memory. Processor board ID 17746964 R4700 CPU at 100Mhz, Implementation 33, Rev 1.0 Bridging software. X.25 software, Version 3.0.0. SuperLAT software (copyright 1990 by Meridian Technology Corp). 5 Ethernet/IEEE 802.3 interface(s) 1 Serial network interface(s) DRAM configuration is 64 bits wide with parity disabled. 125K bytes of non-volatile configuration memory. 8192K bytes of processor board System flash (Read/Write) 16384K bytes of processor board PCMCIA Slot0 flash (Read/Write) Configuration register is 0x2002
From the output, you can see that this is a Cisco 3640 router running Cisco IOS software, Version 12.2(10) and the software image is located on the PCMCIA Flash card in slot 0.
Step 3 Next, configure the router name to be "IOS." To enter configuration mode, use the command configure terminal:
Router# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)# hostname IOS IOS(config)#
Notice that the prompt changes to "IOS" immediately after you enter the hostname command. All configuration changes in Cisco IOS take place immediately.
Step 4 Next, you need to set the enable password and the enable secret pass- word. The enable secret password is stored using stronger encryption and overrides the enable password if it is configured. To set both passwords, you enter the following:
IOS(config)# enable password cisco IOS(config)# enable secret san-fran IOS(config)# exit IOS#
To get into enabled mode, you need to enter the password san-fran. The exit command takes you up one level in the configuration, or out of the current submode.
Step 5 After configuring the router name and setting the enable and enable secret passwords, you can examine the running configuration:
IOS# show running-config Building configuration... Current configuration : 743 bytes ! version 12.2 service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname IOS ! enable secret 5 $1$IP7a$HClNetI.hpRdox84d.FYU. enable password cisco ! ip subnet-zero ! call rsvp-sync ! interface Ethernet0/0 no ip address shutdown half-duplex ! interface Serial0/0 no ip address shutdown no fair-queue ! interface Ethernet2/0 no ip address shutdown half-duplex ! interface Ethernet2/1 no ip address shutdown half-duplex ! interface Ethernet2/2 no ip address shutdown half-duplex ! interface Ethernet2/3 no ip address shutdown half-duplex ! ip classless ip http server ip pim bidir-enable ! dial-peer cor custom ! line con 0 line aux 0 line vty 0 4 ! end
Step 6 The show running-config output shows the configuration that is currently active in the system; however, this configuration is lost if the system is restarted. To save this configuration to NVRAM, you must issue the following command:
IOS# copy running-config startup-config Destination filename [startup-config]? Building configuration... [OK]
Step 7 To view the startup configuration saved in NVRAM, use the command show startup-config.
In the preceding step sequence, notice the Ethernet and serial interfaces that show up in the configuration file. Each interface requires that certain parameters such as encapsulation and address be set before the interface can be used properly. In addition, IP routing or bridging might need to be configured. Refer to the Cisco IOS installation and configuration guides available at http://www.cisco.com for your version of software to learn about all possible configuration options and recommended guidelines.
Table 4-1 describes some of the more common commands used to monitor the system.
Table 4-1 Commands Used to Monitor Cisco IOS Devices
Cisco IOS Command
Displays current status and configuration details for all interfaces in the system
show processes cpu
Displays CPU utilization and the current processes running in the system
Shows how system buffers are currently allocated and functioning for packet forwarding
Shows how memory is allocated to various system functions and memory utilization
Displays details on hardware cards in the system
show ip route
Displays the current active IP routing table
Displays the current active IP address-to-MAC address mapping in the ARP table