← Back to Cisco Examples
Getting Started · Cisco

Cisco 1921 Intro

A Cisco router has no screen and no keyboard. The first time you talk to one, you do it through a console cable plugged into your laptop, using a program that shows the router's text on your screen. This page takes you from a router in a box to a blinking prompt you can type into — on Windows, Mac, or Linux — and then shows you the first handful of commands every Cisco tutorial on this site assumes you know. No networking knowledge is needed to get through it.

The finish line — what you'll see when it's done
Router> enable Router# show version Cisco IOS Software, C1900 Software (C1900-UNIVERSALK9-M), Version 15.7(3)M8 Cisco CISCO1921/K9 (revision 1.0) with 487424K/36864K bytes of memory.
Time needed ~30 min
This guide has a few 💡 Explain it simply prompts. When you reach one, answer it out loud in plain words before revealing the answer. If you can explain why the console cable exists, you will never be stuck when the router goes quiet.
STEP 01

Meet the router.

The Cisco 1921 is a small business router from Cisco's Integrated Services Router line. It's a metal box about the size of a large hardback book, with a fan, a power cord, and a row of ports on the back. It went out of production years ago, which is exactly why it's the classic home-lab router: they sell used for less than a textbook and run the same IOS software as much bigger Cisco gear. What you learn on this box carries straight over.

Turn it round so the ports face you. Left to right you'll find:

  • Power switch and socket — a normal computer-style cord.
  • Two EHWIC slots — empty rectangles with metal blanking plates. These take optional add-in cards. Leave them alone.
  • Two USB-A ports — for a flash drive. Not what you plug your laptop into.
  • CONSOLE (light blue, RJ-45) — looks like an Ethernet port but isn't one. This is where the console cable goes.
  • Mini-USB console — a second console port, right next to the blue one, that takes a mini-USB cable. Either console port works; you use one or the other.
  • AUX (black, RJ-45) — for an old-fashioned modem. Ignore it. It's the most common port to plug the console cable into by mistake.
  • GE 0/0 and GE 0/1 — the two real network ports. The router calls them GigabitEthernet0/0 and GigabitEthernet0/1. Nothing needs to be plugged into them today.
Why a console cable at all?

A brand-new router has no IP address, so you can't reach it over the network — there's nothing to connect to yet. The console port is a direct serial line that works with zero configuration, even when the router is half-booted or badly misconfigured. It's the one door that's always open. Once you've given the router an address you can switch to SSH, but the console is how you get there.

The blue port isn't Ethernet. The black port isn't the console. Everything else on this page follows from those two facts.

STEP 02

What you need on the desk.

Three things, and the cable is the one people get wrong.

  1. The router and its power cord. The 1921 has an internal power supply, so it's a plain IEC cord like a desktop PC uses.
  2. A console cable. You want a USB-to-RJ45 console cable — USB-A on one end, an RJ-45 plug on the other, usually light blue. About $10–15 online; search for “Cisco USB console cable FTDI.” The FTDI chip inside is the one every operating system already has a driver for, so it just works.
    • If you have the older Cisco kit — a flat light-blue cable with a 9-pin serial plug — that's a rollover cable and it's fine too, but your laptop won't have a 9-pin serial port. You'll need a USB-to-serial adapter to go with it. Same result, two pieces instead of one.
    • An ordinary Ethernet cable will not work, even though it fits the port. The wires are in the wrong order.
    • A plain mini-USB cable into the mini-USB console port also works, but on Windows it needs a Cisco driver first. The blue RJ-45 route is the easy one, so it's the one this page uses.
  3. A terminal program on your laptop — software that opens the serial connection and shows the router's text. On Windows that's PuTTY; on Mac and Linux it's the built-in screen command. Steps 03–05 cover each one.

You do not need an Ethernet cable, a switch, an Internet connection, or any prior configuration. The router, the console cable, and your laptop are the whole lab today.

💡 Explain it simply

A friend tries to set up their router by plugging an Ethernet cable from their laptop into the port marked GE 0/0, opens a browser, and gets nothing. Explain in plain words why that doesn't work and what the console cable does instead.

Reveal a plain-language answer

Ethernet is a network. To talk over a network, both ends need an address, and a fresh router has none — so the laptop is shouting into an empty room. The console cable isn't a network at all. It's a direct wire from your keyboard to the router's brain, like plugging a monitor and keyboard into a PC. It needs no address and no setup; it just shows you what the router is saying and lets you type back. You use it to give the router an address, and after that the network route works too.

STEP 03

Windows — find the COM port, then open PuTTY.

Windows names serial connections COM1, COM2, and so on. Your console cable will get one of those numbers when you plug it in, and you need to know which. Plug the USB end into your laptop now (the router can stay off), then:

  1. Right-click the Start button and choose Device Manager.
  2. Expand Ports (COM & LPT).
  3. Look for a line like USB Serial Port (COM3). The number in brackets is what you want. Write it down.

If the entry has a yellow warning triangle, or you see an Unknown device under Other devices instead, Windows didn't recognise the chip in the cable. Unplug it, install the driver for your cable's chip (the product listing will say FTDI, Prolific, or Silicon Labs — each has a free driver download), plug it back in, and check again. Windows 10 and 11 fetch the FTDI driver automatically on most machines, so usually there's nothing to do.

Install PuTTY

Windows doesn't come with a serial terminal, so download PuTTY — it's free, tiny, and the standard choice. Run the installer with the defaults. Then open PuTTY and set exactly four things on the first screen:

SettingValue
Connection typeSerial (the radio button, not SSH)
Serial lineCOM3 — the number from Device Manager
Speed9600
Saved Sessionstype cisco and click Save, so next time is one click

Click Open. You get a black window with nothing in it. That's correct — the router isn't on yet. Leave the window open and go to Step 06.

The other settings

Under Connection → Serial in the left-hand tree, PuTTY defaults to 8 data bits, 1 stop bit, no parity, and XON/XOFF flow control. Cisco wants all of those except flow control, which should be None. It usually works anyway with the default, but if you get stuck characters or a frozen screen, that's the first thing to change. Everything else can stay as it is.

STEP 04

Mac — find the device, then use screen.

macOS has everything built in. Plug the cable into the Mac, open Terminal (it's in Applications → Utilities, or search for it with Spotlight), and ask what serial devices exist:

Terminal — list serial devices
ls /dev/tty.usb*
/dev/tty.usbserial-A50285BI

The exact name varies with the cable (a mini-USB console shows up as tty.usbmodem… instead). If the command lists nothing, unplug and replug the cable and try again; recent Macs have the FTDI driver built in, so nothing needs installing. Then connect at 9600 baud:

Terminal — connect
screen /dev/tty.usbserial-A50285BI 9600

The window clears and goes blank. That's correct — the router isn't on yet. Leave it and go to Step 06.

Getting out of screen

screen takes over the terminal window, so closing the connection isn't just Ctrl-C. Press Ctrl-A, let go, then press K, and answer y. If you forget and simply close the Terminal window, the session lingers in the background and the next screen command will say the device is busy — run screen -ls to see it and screen -X quit to clean up.

STEP 05

Linux — find the device, then use screen.

Every mainstream distribution has the FTDI driver in the kernel already. Plug in the cable and see what name it was given:

terminal — list serial devices
ls /dev/ttyUSB*
/dev/ttyUSB0

A mini-USB console cable shows up as /dev/ttyACM0 instead. If nothing is listed, dmesg | tail shows what the kernel thought of the cable when you plugged it in. Install screen if you don't have it, then connect:

terminal — install and connect
# Debian / Ubuntu; use dnf or pacman on other distributions
sudo apt install screen

# connect at 9600 baud
sudo screen /dev/ttyUSB0 9600

The window clears and goes blank. That's correct — the router isn't on yet. Leave it and go to Step 06. To leave screen later: Ctrl-A, then K, then y.

Losing the sudo

Serial devices belong to the dialout group (uucp on Arch). Add yourself once — sudo usermod -aG dialout $USER — log out and back in, and from then on screen /dev/ttyUSB0 9600 works without sudo. If you'd rather have menus than key chords, minicom -D /dev/ttyUSB0 -b 9600 does the same job; exit it with Ctrl-A then X.

STEP 06

Plug in, power on, and watch it boot.

With your terminal window open and blank, plug the RJ-45 end of the console cable into the light blue CONSOLE port — not the black AUX port next to it — connect the power cord, and flip the switch on the back. The fan spins up loudly for a few seconds and then settles down. Within a moment, text starts scrolling in your terminal:

System Bootstrap, Version 15.0(1r)M16, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 2012 by cisco Systems, Inc. Total memory size = 512 MB - On-board = 512 MB, DIMM0 = 0 MB CISCO1921/K9 platform with 524288 Kbytes of main memory Main memory is configured to 64 bit mode with ECC disabled Readonly ROMMON initialized program load complete, entry point: 0x80803000, size: 0x1b340 ######################################################### ...

If you see this, everything is connected correctly. The boot takes two to three minutes — the router is decompressing its operating system, which Cisco calls IOS (no relation to the iPhone), and then checking each piece of hardware. Let it run. Somewhere in the middle it may pause for a while with no output; that's normal.

The two questions on a fresh router

A router that has never been configured, or one whose previous owner wiped it, ends the boot with an offer to walk you through setup:

--- System Configuration Dialog --- Would you like to enter the initial configuration dialog? [yes/no]: no

Type no and press Enter. The wizard asks a dozen questions in an order that makes no sense until you already know what they mean, and everything it does is one short command you'll learn in Step 09. Decline it. You may then see:

Would you like to terminate autoinstall? [yes]: yes

Press Enter to accept yes. Autoinstall is the router trying to fetch a config from the network, and there is no network. A few more log lines scroll past, ending with:

Press RETURN to get started!

Press Enter, and you get the thing you came for:

Router>

That's the prompt. The router is listening.

Second-hand router?

If the previous owner didn't erase it, you'll skip the questions and land straight at a prompt with their hostname, like OfficeRouter>. That's fine for reading, but the old config may include passwords you don't know, and you'll probably want to start clean anyway. Step 12 covers both: wiping the config, and getting in when you're locked out.

STEP 07

The three prompts.

Cisco IOS has modes, and the end of the prompt tells you which one you're in. Getting comfortable with three of them is most of what “knowing Cisco” means at the start.

PromptNameWhat you can do
Router>User EXECLook, but not much. A few show commands and ping.
Router#Privileged EXECSee everything, save, reboot. The “admin” level.
Router(config)#Global configurationChange settings. Every configuration command lives here or deeper.

You move between them with three commands. Type these now, one at a time, and watch the prompt change:

console — walk up and back down
enable
configure terminal
exit
disable
Router> enable Router# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)# exit Router# disable Router>
  • enable — go from > to #. On a fresh router there's no password; later you'll set one.
  • configure terminal — go from # to (config)#. Everyone abbreviates this to conf t.
  • exit — back up one level. end (or Ctrl-Z) jumps all the way back to # from however deep you are.
  • disable — back from # to >. Rarely needed; you'll normally just stay at #.

Three things that make the CLI friendly

  1. Question mark. Type ? at any prompt to list every command available there. Type part of a command and then ?sh? — to see what it could complete to. Type a command, a space, and ? to see what comes next. This is the built-in manual, and it's better than most.
  2. Tab completes a partly typed word, just like a Linux shell.
  3. Abbreviations. You only need to type enough letters to be unambiguous. show running-config is sh run; configure terminal is conf t; interface GigabitEthernet0/0 is int g0/0. Every tutorial on this site writes the full command so it's clear what's happening, but nobody types them that way.
STEP 08

Look around: three show commands.

Before you change anything, learn to read. These three commands answer “what is this box?”, “what ports does it have?”, and “how is it set up?” — and you'll type them hundreds of times. Go to # with enable first.

console — what is this box?
show version
Cisco IOS Software, C1900 Software (C1900-UNIVERSALK9-M), Version 15.7(3)M8, RELEASE SOFTWARE (fc2) ... Router uptime is 4 minutes System image file is "flash0:c1900-universalk9-mz.SPA.157-3.M8.bin" ... Cisco CISCO1921/K9 (revision 1.0) with 487424K/36864K bytes of memory. 2 Gigabit Ethernet interfaces ... Configuration register is 0x2102

The first line is the software version. The line with CISCO1921/K9 confirms the model. The last line, Configuration register, should read 0x2102 — that's the normal value, and Step 10 explains what happens when it isn't.

When the output is longer than the screen you'll see --More-- at the bottom. Space shows the next page, Enter shows one more line, and q gives up and returns to the prompt.

console — what ports does it have?
show ip interface brief
Interface IP-Address OK? Method Status Protocol Embedded-Service-Engine0/0 unassigned YES unset administratively down down GigabitEthernet0/0 unassigned YES unset administratively down down GigabitEthernet0/1 unassigned YES unset administratively down down

One line per port. unassigned means no IP address yet, and administratively down means the port is switched off — Cisco ships every port disabled until you turn it on. Both are expected on a new router. The Embedded-Service-Engine line is an internal port you'll never use; ignore it. This is the single most useful command in IOS, and sh ip int br is how everyone types it.

console — how is it set up?
show running-config
Building configuration... Current configuration : 1058 bytes ! version 15.7 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption ! hostname Router ! ... interface GigabitEthernet0/0 no ip address shutdown duplex auto speed auto ! ... end

This is the router's entire configuration as a text file, and it's the most important idea in Cisco: the config is just the list of commands that were typed. Every line you see here is something you could type yourself at the (config)# prompt, and every command you type shows up here. There's no hidden state. If you can read this file, you know exactly what the router is doing.

STEP 09

Your first configuration, and how to save it.

Five lines. They give the router a name, put a password on enable, and fix the two things that annoy every beginner. Type them at the prompt in order; the comments explain each one.

console — first configfive commands
! go to configuration mode
configure terminal

! 1. name the router — the prompt changes immediately
hostname R1

! 2. password for the enable command (pick your own)
enable secret MyLabPassword

! 3. stop the router trying to look up typos as hostnames (see below)
no ip domain-lookup

! 4. stop log messages breaking up the line you're typing on the console
line console 0
 logging synchronous
 exit

! back to #
end
Router# configure terminal Router(config)# hostname R1 R1(config)# enable secret MyLabPassword R1(config)# no ip domain-lookup R1(config)# line console 0 R1(config-line)# logging synchronous R1(config-line)# exit R1(config)# end R1#

Notice the prompt changed to R1 the instant you pressed Enter on hostname, and changed again to (config-line)# when you went into the console line. Cisco applies every command immediately — there's no “apply” button. That's convenient and also the reason for the next section.

Why no ip domain-lookup

Make a typo at the # prompt — say shw version — and instead of an error the router assumes you're trying to connect to a computer called “shw” and spends a minute trying to look it up: Translating "shw"...domain server (255.255.255.255). Line 3 turns that off. If you're already stuck in it, the escape is Ctrl-Shift-6, which is the general “stop what you're doing” key on Cisco.

Running config vs. startup config

Right now the changes you made live in RAM. Power off the router and they're gone. There are two configs:

  • running-config — what the router is doing right now, in memory. Every command you type goes here.
  • startup-config — the file it loads at boot, on flash. Nothing goes here unless you copy it.

So the last step of every session is to copy one to the other:

console — save
copy running-config startup-config
Destination filename [startup-config]? Building configuration... [OK]

Press Enter at the filename question to accept the default. write memory (or just wr) does exactly the same thing in fewer keystrokes, and it's what you'll see most people type. Now reboot to prove it stuck: reload, confirm with Enter, and after the boot you should land at R1> — and enable should ask for your password.

💡 Explain it simply

You spent an hour configuring a router, it worked perfectly, then the power flickered and every setting vanished. Explain to a friend what happened and the one habit that would have prevented it.

Reveal a plain-language answer

The router keeps two copies of its settings: the one it's using right now, which lives in memory and disappears when the power goes, and the saved one on its flash storage, which it reads when it boots. Typing a command only changes the memory copy. Nothing you did was ever written to storage, so when the power came back the router loaded the old saved copy — empty. The habit is write memory before you walk away, the same way you press Save in a document. Cisco doesn't autosave, and that's on purpose: if a change breaks something, a reboot undoes it.

STEP 10

When something's wrong.

Almost every first-day problem is one of these.

The terminal window is blank

  1. Press Enter. A router that finished booting before you connected sits silently until you do.
  2. Check the port. Is the cable in the light-blue CONSOLE port, not the black AUX? Ninety percent of blank screens are this.
  3. Check the COM number / device name. On Windows, unplug the cable and watch which entry disappears from Device Manager — that's yours. On Mac or Linux, run the ls command again with the cable out and in.
  4. Is another program holding the port? Only one program can open a serial port at a time. Close the other PuTTY window or the forgotten screen session.

The screen shows garbage like ▒░▓•ÿ˜

The speed is wrong. The router talks at 9600; check your terminal is set to the same. A second-hand router occasionally has its console set to 115200 by the previous owner — try that if 9600 gives noise.

% Invalid input detected at '^' marker.

A typo. The ^ sits under the exact character IOS gave up at. Look there. Use ? to check the spelling.

% Ambiguous command: "s"

You abbreviated too far — several commands start with those letters. Add another letter or two. s? shows the candidates.

% Incomplete command.

The command is spelled right but needs more after it. Type it again with a space and ? to see what.

The router is hanging on Translating "..."

Press Ctrl-Shift-6. Then add no ip domain-lookup from Step 09 so it never happens again.

It asks for a password I don't know

A second-hand router with the old owner's config. There's no reset button on a 1921, but there is a standard ten-minute procedure that gets you in without the password — it's the second half of Step 12.

STEP 11

Where to go next.

You can connect to the router, move between the three prompts, read its configuration, change it, and save it. That's the foundation every other Cisco page on this site builds on — none of them will explain the console cable or conf t again.

1

Cisco 1921 & C2960L Setup

The full build: give the router an address, turn on the ports, add a switch, and get DHCP and Internet access working.

2

IOS Command Reference

The cheat sheet. Every command from this page and the ones you'll meet next, grouped by what they do.

3

NAT and VLANs

Once the basic network works: share one public address across the LAN, and split the LAN into separate networks.

STEP 12

Resetting the router to factory.

There is no reset button on a 1921 — no paperclip hole, no “hold for ten seconds.” A reset is a command, and which command depends on one question: can you get to the # prompt? If yes, it's two lines. If a password is in the way, it's a slightly longer procedure that every Cisco admin learns eventually. Both are below.

A — You can log in: wipe the saved config

Remember from Step 09 that the router keeps two configs. A factory reset is just deleting the saved one and rebooting, so the router comes up with nothing — exactly like the first boot in Step 06.

console — erase and rebootthree commands
enable
write erase
reload
R1# write erase Erasing the nvram filesystem will remove all configuration files! Continue? [confirm] [OK] Erase of nvram: complete R1# reload System configuration has been modified. Save? [yes/no]: no Proceed with reload? [confirm]

Two prompts to get right. Press Enter at [confirm] to go ahead with the erase. Then, when reload asks whether to save the modified configuration, answer no — saying yes writes the running config straight back into the file you just erased, and you're back where you started. Press Enter once more to confirm the reload. Two or three minutes later you'll see the initial configuration dialog question from Step 06, which is how you know it worked.

Same thing, older name

erase startup-config does exactly what write erase does; you'll see both in tutorials. Neither touches the IOS software itself or anything on the flash card — only the saved configuration. You can't break the router this way.

B — You're locked out: password recovery

If enable asks for a password you don't have, you can't type write erase. The way round it is to make the router boot without reading its saved config, using the configuration register — that 0x2102 value on the last line of show version. Setting it to 0x2142 tells the router to skip the startup-config on boot, so you land at a passwordless prompt. You need the console cable for this; it can't be done over the network, which is the point.

  1. Connect and reboot. Console cable in, terminal open at 9600 (Steps 03–05), then switch the router off and on.
  2. Send Break during the first minute of boot. As soon as the bootstrap text appears, send the Break signal:
    • PuTTY (Windows): right-click the window's title bar → Special CommandBreak.
    • screen (Mac / Linux): press Ctrl-A, let go, then press B.
    • minicom: Ctrl-A then F.
    The boot stops and you get a rommon 1 > prompt. That's the router's bare-metal boot loader, and it's the only place the register can be changed without a password. If you missed the window and the router booted all the way, just power-cycle and try again — you have about 60 seconds.
  3. Change the register and reboot.
rommon — skip the startup config
confreg 0x2142
reset
rommon 1 > confreg 0x2142 You must reset or power cycle for new config to take effect rommon 2 > reset

The router boots normally but ignores its saved config, so it ends at the setup-dialog question. Answer no, press Enter until you get Router>, and enable now works with no password. From here you choose:

console — option 1: full wipe, start fresh
enable
write erase
configure terminal
config-register 0x2102
end
reload
console — option 2: keep the old config, just replace the password
enable
copy startup-config running-config
configure terminal
enable secret MyLabPassword
config-register 0x2102
end
write memory

Option 2 is for when the previous config is worth keeping — copy startup-config running-config loads it back into memory (note the direction: the reverse of saving), you overwrite the one password you don't know, and save. Every interface in the loaded config comes back shut down, so if you keep it, check show ip interface brief and no shutdown the ones you need.

Put the register back — every time

Both options include config-register 0x2102, and it's the line people skip. Leave the register at 0x2142 and the router will ignore its saved config on every boot from now on — which looks exactly like “my write memory isn't working.” If a router ever seems to forget everything on reboot, run show version and read the last line before anything else.

💡 Explain it simply

Password recovery needs the console cable and physical access to the power switch. Explain in plain words why Cisco built it that way instead of a “forgot password” option over the network.

Reveal a plain-language answer

If you could reset the password over the network, so could anyone else who reached the router — the password would be protecting nothing. So Cisco made the rule physical: you have to be standing next to the box, holding a cable plugged into it, and able to turn it off and on. Anyone who can do that could just unplug the router anyway, so nothing is lost by letting them in. It's the same logic as a house key: the lock stops strangers at the door, not the person already inside the room.