As you prepare for the practical elements of your CCENT or CCNA exam, you will often find yourself repeating certain key commands and configuration activities. Depending on your lab environment—which may include live Cisco equipment, as well as simulators like Cisco Packet Tracer, Graphical Network Simulator-3 (GNS3), or Cisco Virtual Internet Routing Lab (VIRL)—you will also find that there are numerous time-saving features and hotkeys to expedite basic configuration activities. This article does not attempt to be exhaustive in detailing these shortcuts, but it should give you a head start when working with Packet Tracer and IOS.
Ready to Start Your Cybersecurity Career?
Get my FREE 5-part series "Strategies for New Cyber Careers". These strategies can help you get your cyber career started. I'll also send you my weekly newsletter every Wednesday with resources that every cyber professional needs to know.
Packet Tracer (https://www.netacad.com/courses/packet-tracer) offers a way to visualize basic network topologies and packet flow while offering a subset of IOS features for practice configuration and troubleshooting. The following are some simple hotkeys and shortcuts to improve your experience in Packet Tracer:
- Change default device window size: By clicking on a router, switch, or other device icon in your network, you will see a popup with options to make physical changes to the device or to work in the GUI or CLI. Unfortunately, the default window size is such that output from the CLI, where you will generally be operating, will often be hard to read (try a “sh ip int brief” with default settings to observe this). To remedy the issue, simply add a custom tab to the device window to force a larger window size: Options>Preferences (Ctrl+R)>Custom Interfaces>choose an option like “net.netacad.cisco.ActivitySequenceEditor:index.html” in the dropdowns for Router, Switch, MLS and other devices you plan to use. You can safely ignore the new (Custom Interface) tab in the device window, while enjoying the larger window size.
- Speed up device placement and visualization: This is a simple one, but if you aren’t already doing this, simply Ctrl-click when selecting a device to place from the bottom pane and then click multiple times in the workspace to place multiple copies of the device. Likewise, Ctrl-click the red-orange lightning bolt (Automatically choose connection type) under [Connections] and click on each of your devices to have Packet Tracer dynamically choose a port and cable standard to quickly cable your devices. Beware of relying on this before you understand why given ports and cable types are necessary in different situations, and when you want to selectively choose your exact physical layout. Finally, Packet Tracer typically defaults to hiding the port numbers used in a logical topology, but this is useful information at-a-glance, so turn this on by again using Options>Preferences (Ctrl+R)>Interface tab>Always Show Port Labels in Logical Workspace. Explore the various options in the Preferences window to further customize your experience.
- Quickly navigate Simulation mode to deepen your understanding of packet flow. You have probably already experimented with the powerful Simulation mode accessible through its lower right-hand icon or the Shift+S hotkey (Shift+R for Realtime). A full discussion of Simulation mode would be an article unto itself, but there are certain things you can do to improve your experience here.
- Use Event List Filters: If you configure a basic network and start a capture through the Simulation Panel>Auto Capture/Play (Alt+P), you will find yourself quickly bombarded with certain protocol traffic like STP, DTP, and RIPv2, for instance, that may obscure the packets you are looking for. While this is closer to the experience of a live packet capture using Wireshark, it may be confusing and time-consuming during your baseline studies of switching and routing logic. You may, for instance, want to watch only ARP and ICMP traffic at a given time. To do so, click Show All/None under Visible Events, and then selectively add in the desired traffic by clicking Edit Filters>checking off the box for each IPv4, IPv6, or Miscellaneous protocol of interest.
- Speed up packet flow: This is a simple item, but you will notice that the default capture speed in simulation mode is painfully slow. To change this, adjust the blue slider under Play Controls further to the right and disable the “Constant Delay” checkbox to capture traffic more rapidly. You can always change these back as needed.
- Customize your window feedback in Simulation mode: Simply right-click the grey-shaded bar containing the “Simulation Panel” heading and click an option like IOS Command Log or PDU List Window to display a running log of your commands across devices or pings/complex PDUs that you have constructed for troubleshooting purposes. These windows can be dragged and dropped as needed on-screen.
As a final comment about Packet Tracer, know that Cisco offers ample tutorials accessible through Help>Tutorials or Cisco Networking Academy. Access https://www.cisco.com/c/dam/en_us/ training-events/netacad/downloads/pdf/CiscoPTkeyboardShortcuts.pdf for more hotkeys, which can also be seen by mousing over most options within Packet Tracer itself.
Moving on to Cisco IOS, which is really the main area to be working, there are numerous ways to improve your experience in the command line. The following are some of the fundamental methods to improve your efficiency (many of these you will already know, but should try to emphasize):
- Shorten commands to their shortest unique form: You only have to enter as many characters of a command as is necessary for IOS to interpret that command unambiguously. For instance, [Router>enable] would shorten to [Router>en], and [Router#configure terminal] to [Router#conf t]. (By that same token, an entry of [Router#con] would prompt IOS to reject an ambiguous command.) More satisfyingly, a longer command like [Switch(config-if)switchport trunk native vlan 10] could shorten to [Switch(config-if)sw tr nat v 10] or even shorter alternatives as you become fluent. Recent exams support command-shortening, but practice long enough with the full forms to understand what they mean before moving to abbreviations.
- Use Tab to auto-complete commands and ? for Help: If you’ve ever forgotten a particular command—and you certainly will—you can use the Tab key after entering a few characters to have IOS complete the command, assuming that you’ve entered a unique sequence. A question mark in an empty field will immediately show all available commands for the given command mode. A question mark following a character will show all the ways to complete that command, and a question mark following a partial command and a space will show options based on that partial command.
- Use the “do” command to execute a command from a lower privilege level: IOS is structured to have the user progress through a hierarchy of command modes in order to gain access to different commands based on the configuration context and the user’s privileges. This translates to certain commands, like “show” and “write” commands generally being available in privileged (exec/enable) mode, while the bulk of configuration is done in the higher modes like global/interface/line/dhcp configuration. To force a “show” or “write” command from these modes without exiting to the lower mode, as you will often need to do in order to quickly verify or save your work, simply write “do” before the necessary command. Example:
Switch(config-if)#do sh int f0/1
FastEthernet0/1 is administratively down, line protocol is down (disabled)
- Use the pipe parameter (|) to filter “show” command output: Showing the running configuration with [Router#show running-config] or [Router#sh run] is a mainstay method to view and troubleshoot configuration issues. However, it can easily produce several pages of output, when you know that you are looking for just a limited subset of that information. The solution, as in many command shells, is to pipe (|) that command through another command filter. Typical modifiers are: | include, | section, | begin, and | exclude. For instance, one could run [Switch#sh run | begin interface Vlan1] to jump to information on the switch’s virtual interface, well into the running-config output. Be aware that the filtered output is case-sensitive and does not support abbreviation, so the following returns an invalid input error: [Switch#sh run | int vlan1]. Again, experiment with the available filters.
- Use the “interface range” command to apply blanket configurations to several interfaces at once: [Switch(config)#interface range f0/x-y] will bring the user to interface range configuration mode for interfaces f0/x – f0/y, allowing the user to make simultaneous changes to this whole group of ports, such as configuring all ports to statically operate as static or trunk ports.
- Turn off local hostname resolution with “no ip domain-lookup”: This global configuration command will be immediately useful to you if you have ever mistyped a command in User or Privileged modes and had to wait while the device tries to broadcast a DNS request. The router or switch sees the unrecognized command as a potential hostname to be resolved to an IP address for a telnet session. Avoid this behavior and wasted time by running [Router(config)#no ip domain-lookup].
- Use the up- and down- arrow keys to move through your command history and re-execute prior commands: As in other command shells, using the arrow keys allows one to cycle through prior commands and avoid having to retype long commands.
Whew! Hopefully you’ve learned some shortcuts that will make your CCNA labbing more efficient and allow you to focus on the big concepts of configuration and troubleshooting. This is just a quick pass at some of the quality-of-life features in Packet Tracer and IOS. Comment below with other tips that you’d like to share!