Home > Articles > Cisco Network Technology > General Networking > Introduction to Cisco IOS Software

Introduction to Cisco IOS Software

Chapter Description

This sample chapter introduces the fundamentals of Cisco IOS software, the operating system that runs on Cisco routers and switches.


Cisco IOS has three command modes, each with access to different command sets:

  • User mode—This 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 mode—This 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 mode—This 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

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

    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
    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

    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

    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
    interface Serial0/0
     no ip address
     no fair-queue
    interface Ethernet2/0
     no ip address
    interface Ethernet2/1
     no ip address
    interface Ethernet2/2
     no ip address
    interface Ethernet2/3
     no ip address
    ip classless
    ip http server
    ip pim bidir-enable
    dial-peer cor custom
    line con 0
    line aux 0
    line vty 0 4

    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...

    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


show interface

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

show buffers

Shows how system buffers are currently allocated and functioning for packet forwarding

show memory

Shows how memory is allocated to various system functions and memory utilization

show diag

Displays details on hardware cards in the system

show ip route

Displays the current active IP routing table

show arp

Displays the current active IP address-to-MAC address mapping in the ARP table

3. Debugging and Logging | Next Section Previous Section