This browser is too old to run Achievable.

Update it, or open this page in a current version of Chrome, Safari, Firefox or Edge. On an iPhone or iPad, update iOS: every browser there runs on the version of Safari that comes with it.

Achievable logoAchievable logo
CCNA
Sign in
Sign up
Purchase
Textbook
Practice exams
Support
How it works
Resources
Exam catalog
Mountain with a flag at the peak
Textbook
Introduction
1. Introduction to networking
2. Administering Ethernet LANs
2.1 Wired network access
2.2 Hosts communicating on a Local Area Network
2.3 Virtual LANs (VLANs)
2.4 Layer 2 link redundancy
2.5 Configuring Cisco Switches
2.5.1 Introduction to Cisco's Internetworking Operating System (IOS)
2.5.2 MAC address table & VLAN configuration
2.5.3 The Voice VLAN and Layer 1 troubleshooting
2.5.4 How to configure Rapid PVST+ and Etherchannels
3. IP connectivity
4. Network services
5. IPv6
6. Wireless networking
7. Network management and administering network devices
8. Network security fundamentals
9. Network automation and programmability
Wrapping up
Achievable logoAchievable logo
2.5.1 Introduction to Cisco's Internetworking Operating System (IOS)
Achievable CCNA
2. Administering Ethernet LANs
2.5. Configuring Cisco Switches
Our CCNA course is currently in development and is a work-in-progress.

Introduction to Cisco's Internetworking Operating System (IOS)

15 min read
Font
Discuss
Share
Feedback

Up to this point, you’ve been learning about computer networking technologies and protocols, along with how certain devices operate (especially an Ethernet switch). Now we’ll focus on how to use the operating system software on an Ethernet switch. In the next chapter, you’ll configure the protocols and features discussed throughout Chapter 2, and you’ll also verify that the LAN and configurations are working correctly.

Introduction to Cisco IOS

Cisco’s IOS operating system was originally designed for Cisco routers, since Cisco primarily built routers in the 1980s. As Ethernet switches became popular in enterprise networks in the 1990s, Cisco acquired a leading switching company at the time, Kalpana, Inc., and inherited their Catalyst line of Ethernet switches. Since then, Cisco has released its enterprise Ethernet switching products under the Catalyst line.

Early Cisco switches ran an operating system called CatOS. Over time, Cisco standardized on IOS across both routers and switches. Today, modern Cisco routers and switches run a newer version called IOS-XE. Cisco IOS-XE runs on top of Linux and supports virtualization.

IOS-XE

The original Cisco IOS operating system has been superseded by Cisco IOS-XE, so from this point on, any references made to “Cisco IOS” should be understood as “IOS-XE”, unless explicitly stated otherwise. Today, the terms are often used synonymously.

There’s also another Cisco operating system used for Cisco’s data center switching line, called NX-OS. However, this is out of scope of the CCNA 200-301 v1.1 exam.

Accessing Cisco IOS

To access the Cisco IOS interface, you have two options:

  • The Command Line Interface (CLI)
  • The Graphical User Interface (GUI)

Access to the Graphical User Interface (GUI) of a Cisco device is achieved by connecting via a web browser using the HTTP or HTTPS protocol. For the CCNA 200-301 v1.1 exam, you only need to know how to configure Cisco routers and switches using the CLI.

To access the CLI, you’ll need a PC or laptop with terminal emulator software installed. A common terminal emulator on Windows is PuTTY, which you can download for free.

Next, you need a physical connection between your computer and the Cisco switch. This uses a cable officially called a rollover cable. You’ll often hear it called a "“console” cable. It’s typically a flat, light-blue cable with:

  • An RJ-45 connector on one end (it looks like Ethernet, but it is not Ethernet)
  • A serial connector on the other end
Sidenote
Serial (RS-232)

Serial cables are an older technology under the RS-232 specification, used to transfer data between two devices. Older computers included serial ports, but most modern computers do not. Instead, you typically use an adapter on the serial end of the console cable that converts serial to USB so you can plug it into your computer.

A light blue rollover console cable with a DB-9 serial connector on one end and an RJ-45 connector on the other, coiled on a desk near a Cisco switch.
Console Cable with Serial connector
Achievable
 

A light blue Cisco console cable connects a laptop's USB port, via a TRENDnet TU-S9 USB-to-serial adapter, to the console port of a Cisco switch; the laptop screen shows a minicom terminal session with router CLI commands like 'clear logging' at a Router# prompt.
Serial to USB Adapter
Achievable

Console cables can also be purchased with a native USB connector on the computer end instead of a serial connector.

A blue rollover console cable with a USB-to-serial (FTDI) adapter on one end plugs into the RJ-45 console port of a Cisco switch.
Console Cable with USB connector
Achievable
 

Once you plug the RJ-45 end of the console cable into the switch and the USB (or serial, if your computer has one) end into your computer, you can launch your terminal emulator and then power on the switch. Cisco switches typically don’t have a power switch, so plugging the power cable into an outlet powers the switch on.

To log into the switch CLI, select the option in your terminal emulator to connect using Serial (yes, even if you’re using a USB adapter or a native USB console cable). You’ll also need to choose which COM port the cable is using on your computer. On Windows, you can find this in Device Manager.

Finally, make sure the terminal settings match what the switch expects. The default settings work for most Cisco hardware:

  • 9600 bits per second
  • 8 data bits
  • No flow control
  • 1 stop bit
  • No parity

Once connected, you should see output in the terminal emulator window. If you don’t see anything, press Enter.

The basics of Cisco IOS

When a switch boots for the first time, it often displays a dialog prompt asking whether you want to continue with the configuration dialog (a setup wizard). This wizard walks through initial setup step by step, but it’s time-consuming and may configure items you don’t need.

In CCNA-style administration, it’s preferred to enter initial configurations manually rather than using the setup wizard.

SecureCRT console session showing Cisco System Configuration Dialog, asking 'Would you like to enter the initial configuration dialog? [yes/no]:' with explanatory text noting it guides basic switch setup like hostname, password, and management IP, or Ctrl-C exits to the IOS command line.
Initial Setup Wizard
Achievable

The setup wizard will ask whether you want to configure the switch using the wizard. You should cancel it by typing the keyboard combination Ctrl+C (in Windows) or by typing No and pressing Enter.

User mode

After exiting the setup wizard, you’ll see the switch prompt with the default hostname and a greater-than sign. It looks like this:

Switch>

When you see this prompt, you are in IOS User mode.

User mode is very limited. You can view some information on the device, such as the interface status, statistics, MAC address and routing tables, but you cannot view any of the configurations on the device. To view configurations, you need to enter Privileged EXEC mode.

Privileged EXEC mode

To move from User mode to Privileged EXEC mode (often called just “Privileged mode”), type:

enable

Then press Enter. The prompt changes from > to #:

Switch#

Terminal showing command Switch>enable entered, changing the prompt to Switch#, indicating privileged EXEC mode.
User to Privileged Mode
Achievable
 

In Privileged mode, you can view interface status and the running configuration. Two key commands are:

show running-config show interface status

The show running-config command displays the configurations currently active on the switch. As you make changes, they appear in the output.

Switch CLI in privileged EXEC mode after running show running-config, displaying the start of the configuration: 2618 bytes, version 15.2, timestamp settings enabled, password encryption disabled, hostname Switch, and no aaa new-model, with output paused at --More--.
show running-config
Achievable
 

To see the state of switch ports (for example, whether they are connected or not connected), use show interface status.

Switch CLI output of show interface status listing ports Gi0/0 through Gi0/3, all with status notconnect, VLAN 1, duplex a-full, speed auto, type RJ45.
show interface status
Achievable

You can view the interface status in User mode as well.

You can see whether a switchport has another device “connected” on the other end via an Ethernet cable and the speed of the interface (port).

At this point, the next step is usually to make configuration changes. For example, you might want a more recognizable hostname than the default Switch. From Privileged mode, you cannot make any configuration changes. To change the hostname, you must enter Global Configuration mode.

Global configuration terminal

To enter Global Configuration mode from Privileged mode, type:

configure terminal

The prompt changes to:

Switch(config)#

This indicates you’re in Global Configuration mode. This mode is used for configurations that affect the switch as a whole, and it also lets you enter additional sub-configuration modes.

To change the hostname from Switch to SW1, type:

hostname SW1

Then press Enter.

Terminal session: Switch#configure terminal, then Switch(config)#hostname SW1, after which the prompt changes to SW1(config)#, showing the switch renamed to SW1.
Changing the hostname on the switch
Achievable
 

After you enter the command, the prompt updates automatically to show the new hostname.

When you’re finished configuring, you’ll typically verify your changes. To do that, you need to return to Privileged mode. In Cisco IOS, you can move up one level from your current mode by typing exit.

From Global Configuration mode, what mode does exit take you back to?

(spoiler)

Privileged mode

You can also return to Privileged mode from any depth of sub-modes by typing end, which takes you directly back to Privileged mode.

Now run show running-config again to verify the change:

Terminal after entering hostname SW1 and exit, showing show running-config output; current configuration is 2615 bytes, version 15.2, with the line hostname SW1 highlighted, followed by boot markers and no aaa new-model.
Reviewing changes in the running configuration
Achievable
 

In the screenshot above, you can see the new hostname (SW1).

After making configuration changes, you must save them. With Cisco IOS, changes are not saved automatically. You have to manually save them. If the switch loses power or reboots before you save, your changes will be lost.

To save your changes, type:

copy running-config startup-config

Then press Enter once. The switch will ask you to confirm; press Enter a second time to complete the command.

Terminal output of SW1#copy running-config startup-config, prompting Destination filename [startup-config], then compressing configuration from 2615 bytes to 1514 bytes OK, followed by GRUB configuration writing and written successfully messages.
Saving the running config to the startup config
Achievable
 

This copies the running configuration (stored in non-persistent memory) into NVRAM, where the startup configuration is stored. The startup configuration is what the switch loads when it boots.

If you ever run into a situation where you can’t remember a keyword or how the rest of a command goes, you can, at any time, type in the question mark key “?” and Cisco IOS will automatically pop up a list of suggested keywords that should follow. This feature is called the Context-Sensitive Help menu.

CLI output of 'show interface ?' on SW1 listing valid interface types with context-sensitive help, including Async, BVI, Dialer, GigabitEthernet, Loopback, Multilink, Port-channel, and others, with a --More-- prompt indicating additional options.
Context Sensitive Help 1
Achievable
CLI output of SW1#show ip ? context-sensitive help, listing IP-related keywords with descriptions such as access-lists, bgp, cef, dhcp, eigrp, and http, with a --More-- prompt indicating additional options follow.
Context Sensitive Help 2
Achievable

Everything covered in this chapter also applies to Cisco routers, since they also use Cisco IOS and share similar commands.

In the next chapter, you’ll administer a Cisco switch and configure and verify the protocols discussed throughout Chapter 2.

Cisco IOS Overview

  • Cisco IOS: original OS for routers, now used on switches
  • Modern devices run IOS-XE (built on Linux, supports virtualization)
  • Catalyst: Cisco’s enterprise Ethernet switch line
  • NX-OS: separate OS for data center switches (not CCNA exam scope)

Accessing Cisco IOS

  • Two interfaces: Command Line Interface (CLI) and Graphical User Interface (GUI)
    • GUI accessed via HTTP/HTTPS (configuration not required for CCNA exam)
  • CLI access requires:
    • Terminal emulator software (e.g., PuTTY)
    • Physical connection using a rollover (console) cable (RJ-45 to serial/USB)
    • Serial-to-USB adapter often needed for modern computers
  • Default terminal settings:
    • 9600 bits per second
    • 8 data bits, no parity, 1 stop bit, no flow control

Cisco IOS Modes

  • User mode (Switch>): limited commands, view status only
  • Privileged EXEC mode (Switch#):
    • Enter with: enable
    • View running configuration: show running-config
    • View interface status: show interface status
  • Global Configuration mode (Switch(config)#):
    • Enter with: configure terminal
    • Used for device-wide and detailed configuration
    • Change hostname: hostname [name]
    • Exit to Privileged mode: exit or end

Configuration Management

  • Changes made in running-config (RAM), not saved by default
  • Save changes to startup-config (NVRAM) with:
    • copy running-config startup-config
    • Confirm by pressing Enter twice
  • Unsaved changes lost on power loss or reboot

Helpful IOS Features

  • Context-Sensitive Help: type ? for command suggestions and syntax help
  • Applies to both Cisco switches and routers using IOS

Sign up for free to take 10 quiz questions on this topic

Previous
Next  | 2.5.2 MAC address table & VLAN configuration
All rights reserved ©2016 - 2026 Achievable, Inc.

Introduction to Cisco's Internetworking Operating System (IOS)

Up to this point, you’ve been learning about computer networking technologies and protocols, along with how certain devices operate (especially an Ethernet switch). Now we’ll focus on how to use the operating system software on an Ethernet switch. In the next chapter, you’ll configure the protocols and features discussed throughout Chapter 2, and you’ll also verify that the LAN and configurations are working correctly.

Introduction to Cisco IOS

Cisco’s IOS operating system was originally designed for Cisco routers, since Cisco primarily built routers in the 1980s. As Ethernet switches became popular in enterprise networks in the 1990s, Cisco acquired a leading switching company at the time, Kalpana, Inc., and inherited their Catalyst line of Ethernet switches. Since then, Cisco has released its enterprise Ethernet switching products under the Catalyst line.

Early Cisco switches ran an operating system called CatOS. Over time, Cisco standardized on IOS across both routers and switches. Today, modern Cisco routers and switches run a newer version called IOS-XE. Cisco IOS-XE runs on top of Linux and supports virtualization.

IOS-XE

The original Cisco IOS operating system has been superseded by Cisco IOS-XE, so from this point on, any references made to “Cisco IOS” should be understood as “IOS-XE”, unless explicitly stated otherwise. Today, the terms are often used synonymously.

There’s also another Cisco operating system used for Cisco’s data center switching line, called NX-OS. However, this is out of scope of the CCNA 200-301 v1.1 exam.

Accessing Cisco IOS

To access the Cisco IOS interface, you have two options:

  • The Command Line Interface (CLI)
  • The Graphical User Interface (GUI)

Access to the Graphical User Interface (GUI) of a Cisco device is achieved by connecting via a web browser using the HTTP or HTTPS protocol. For the CCNA 200-301 v1.1 exam, you only need to know how to configure Cisco routers and switches using the CLI.

To access the CLI, you’ll need a PC or laptop with terminal emulator software installed. A common terminal emulator on Windows is PuTTY, which you can download for free.

Next, you need a physical connection between your computer and the Cisco switch. This uses a cable officially called a rollover cable. You’ll often hear it called a "“console” cable. It’s typically a flat, light-blue cable with:

  • An RJ-45 connector on one end (it looks like Ethernet, but it is not Ethernet)
  • A serial connector on the other end
Sidenote
Serial (RS-232)

Serial cables are an older technology under the RS-232 specification, used to transfer data between two devices. Older computers included serial ports, but most modern computers do not. Instead, you typically use an adapter on the serial end of the console cable that converts serial to USB so you can plug it into your computer.

 

Console cables can also be purchased with a native USB connector on the computer end instead of a serial connector.

 

Once you plug the RJ-45 end of the console cable into the switch and the USB (or serial, if your computer has one) end into your computer, you can launch your terminal emulator and then power on the switch. Cisco switches typically don’t have a power switch, so plugging the power cable into an outlet powers the switch on.

To log into the switch CLI, select the option in your terminal emulator to connect using Serial (yes, even if you’re using a USB adapter or a native USB console cable). You’ll also need to choose which COM port the cable is using on your computer. On Windows, you can find this in Device Manager.

Finally, make sure the terminal settings match what the switch expects. The default settings work for most Cisco hardware:

  • 9600 bits per second
  • 8 data bits
  • No flow control
  • 1 stop bit
  • No parity

Once connected, you should see output in the terminal emulator window. If you don’t see anything, press Enter.

The basics of Cisco IOS

When a switch boots for the first time, it often displays a dialog prompt asking whether you want to continue with the configuration dialog (a setup wizard). This wizard walks through initial setup step by step, but it’s time-consuming and may configure items you don’t need.

In CCNA-style administration, it’s preferred to enter initial configurations manually rather than using the setup wizard.

The setup wizard will ask whether you want to configure the switch using the wizard. You should cancel it by typing the keyboard combination Ctrl+C (in Windows) or by typing No and pressing Enter.

User mode

After exiting the setup wizard, you’ll see the switch prompt with the default hostname and a greater-than sign. It looks like this:

Switch>

When you see this prompt, you are in IOS User mode.

User mode is very limited. You can view some information on the device, such as the interface status, statistics, MAC address and routing tables, but you cannot view any of the configurations on the device. To view configurations, you need to enter Privileged EXEC mode.

Privileged EXEC mode

To move from User mode to Privileged EXEC mode (often called just “Privileged mode”), type:

enable

Then press Enter. The prompt changes from > to #:

Switch#

 

In Privileged mode, you can view interface status and the running configuration. Two key commands are:

show running-config show interface status

The show running-config command displays the configurations currently active on the switch. As you make changes, they appear in the output.

 

To see the state of switch ports (for example, whether they are connected or not connected), use show interface status.

You can view the interface status in User mode as well.

You can see whether a switchport has another device “connected” on the other end via an Ethernet cable and the speed of the interface (port).

At this point, the next step is usually to make configuration changes. For example, you might want a more recognizable hostname than the default Switch. From Privileged mode, you cannot make any configuration changes. To change the hostname, you must enter Global Configuration mode.

Global configuration terminal

To enter Global Configuration mode from Privileged mode, type:

configure terminal

The prompt changes to:

Switch(config)#

This indicates you’re in Global Configuration mode. This mode is used for configurations that affect the switch as a whole, and it also lets you enter additional sub-configuration modes.

To change the hostname from Switch to SW1, type:

hostname SW1

Then press Enter.

 

After you enter the command, the prompt updates automatically to show the new hostname.

When you’re finished configuring, you’ll typically verify your changes. To do that, you need to return to Privileged mode. In Cisco IOS, you can move up one level from your current mode by typing exit.

From Global Configuration mode, what mode does exit take you back to?

(spoiler)

Privileged mode

You can also return to Privileged mode from any depth of sub-modes by typing end, which takes you directly back to Privileged mode.

Now run show running-config again to verify the change:

 

In the screenshot above, you can see the new hostname (SW1).

After making configuration changes, you must save them. With Cisco IOS, changes are not saved automatically. You have to manually save them. If the switch loses power or reboots before you save, your changes will be lost.

To save your changes, type:

copy running-config startup-config

Then press Enter once. The switch will ask you to confirm; press Enter a second time to complete the command.

 

This copies the running configuration (stored in non-persistent memory) into NVRAM, where the startup configuration is stored. The startup configuration is what the switch loads when it boots.

If you ever run into a situation where you can’t remember a keyword or how the rest of a command goes, you can, at any time, type in the question mark key “?” and Cisco IOS will automatically pop up a list of suggested keywords that should follow. This feature is called the Context-Sensitive Help menu.

Everything covered in this chapter also applies to Cisco routers, since they also use Cisco IOS and share similar commands.

In the next chapter, you’ll administer a Cisco switch and configure and verify the protocols discussed throughout Chapter 2.

Key points

Cisco IOS Overview

  • Cisco IOS: original OS for routers, now used on switches
  • Modern devices run IOS-XE (built on Linux, supports virtualization)
  • Catalyst: Cisco’s enterprise Ethernet switch line
  • NX-OS: separate OS for data center switches (not CCNA exam scope)

Accessing Cisco IOS

  • Two interfaces: Command Line Interface (CLI) and Graphical User Interface (GUI)
    • GUI accessed via HTTP/HTTPS (configuration not required for CCNA exam)
  • CLI access requires:
    • Terminal emulator software (e.g., PuTTY)
    • Physical connection using a rollover (console) cable (RJ-45 to serial/USB)
    • Serial-to-USB adapter often needed for modern computers
  • Default terminal settings:
    • 9600 bits per second
    • 8 data bits, no parity, 1 stop bit, no flow control

Cisco IOS Modes

  • User mode (Switch>): limited commands, view status only
  • Privileged EXEC mode (Switch#):
    • Enter with: enable
    • View running configuration: show running-config
    • View interface status: show interface status
  • Global Configuration mode (Switch(config)#):
    • Enter with: configure terminal
    • Used for device-wide and detailed configuration
    • Change hostname: hostname [name]
    • Exit to Privileged mode: exit or end

Configuration Management

  • Changes made in running-config (RAM), not saved by default
  • Save changes to startup-config (NVRAM) with:
    • copy running-config startup-config
    • Confirm by pressing Enter twice
  • Unsaved changes lost on power loss or reboot

Helpful IOS Features

  • Context-Sensitive Help: type ? for command suggestions and syntax help
  • Applies to both Cisco switches and routers using IOS

More from Configuring Cisco Switches

  • MAC address table & VLAN configuration
  • The Voice VLAN and Layer 1 troubleshooting
  • How to configure Rapid PVST+ and Etherchannels