In this Cisco Modeling Labs (CML) vlog, Cisco Modeling Labs: Device access methods explained, I thoroughly explore Cisco Modeling Labs (CML) 2.10, walking you through the full spectrum of tools available to help you interact with your lab nodes.
While many users are comfortable with the default browser interface, there is a wealth of power hidden beneath the surface for those who want to optimize their productivity and embrace automation.
Here is a detailed guide to navigating your lab environment.
Navigating CML’s built-in user interface
The web browser is the gateway to your lab, but the default experience is only the beginning. By right-clicking the console tab, you can open the following Global Console Settings and adjust them to your liking:
- Customization: You aren’t stuck with the standard font. If you’re a fan of highly readable coding fonts, you can manually enter the names of your installed fonts (such as Caskaydia Cove) to customize your terminal’s look.
- Theming & Layout: You can switch between color themes (like the Retro green) and adjust font sizes to suit your screen real estate. For advanced users, I highly recommend leveraging multiple terminal panes. By splitting your screen, you can monitor multiple device consoles simultaneously, which is essential when troubleshooting complex routing protocols or inter-node communications.
- Pro Tip: Always verify your console size settings—I recommend 80×24 as a reliable standard for serial consoles to ensure they render correctly without formatting glitches.
Navigating the Built-in UI (6:04)
Why SSH key authentication is the gold standard
If you are serious about automation, you need to eliminate the friction of manual password entry. Integrating SSH public key authentication into CML allows you to move toward truly automated lab deployments.
To enable this, you need to modify the /etc/default/virl2 configuration file on your CML host. By setting up the SSH configuration to accept public keys and restarting the virl2 target services (restart the CML machine for this to take effect), you establish a secure, passwordless handshake between your machine and your CML instance. This is the cornerstone for anyone running Ansible playbooks or Python-based automation scripts against their virtual topologies.
The Gold Standard: SSH Key Authentication (16:55)
CML power-user efficiency: The Terminal Server (22:25)
The Terminal Server is often overlooked, but it is one of the most powerful features for command-line enthusiasts. Instead of managing dozens of browser tabs, you can SSH directly into the CML host to access a native CLI menu.
The key advantages that I see by using the terminal server include:
- Interactive Management: Once logged in, the list command provides an instant inventory of your running nodes and their corresponding serial ports.
- Direct Access: The open command allows for rapid switching between devices.
- One-Shot Access: For extreme efficiency, you can provide the lab and node information directly in your SSH command, dropping you straight into a specific device console without ever seeing a menu. This method is incredibly fast and allows for seamless integration with native applications like SecureCRT or Multi-Tabbed PuTTY or terminal multiplexers like tmux or screen.
Power-User Efficiency: The Terminal Server (22:25)
Harness native power with CML’s Breakout Tool
Sometimes, you simply need your favorite desktop tools. The Breakout Tool is a dedicated binary that acts as a bridge between your local machine and your remote lab with these functions:
- Installation & Security: If you are using macOS, you’ll need to grant your terminal emulator Developer Tool privileges in system privacy settings to run the binary.
- Tool Integration: Once configured, Breakout maps internal lab ports to local ports on your machine. This enables you to use industry-standard tools such as SecureCRT, dedicated VNC viewers, or even Wireshark for real-time packet capture, as if the virtual equipment were physically connected to your local network.
Native Power: The Breakout Tool (30:40)
Unlock advanced connectivity with PaTty
Finally, PATty is the most versatile solution for providing direct access to nodes in your lab. It allows you to “punch holes” through the CML firewall via Port Address Translation.
To configure PATty, specific tags are added to nodes. The tags express the mapping of external ports on the host controller to internal ports like RDP (3389) or SSH (22) on the tagged node. The required tag format is specified in the documentation.
This allows for direct access to, for instance, a Windows 11 RDP session or the Alpine Linux SSH service, as shown in the demo. Because PATty establishes a direct, transparent path, it might become your preferred way to interact with devices inside of a lab using native tools.
Advanced Connectivity with PATty (39:19)
CML Community Resources
CML 2.10 is not just a simulator; it is a highly extensible platform. Whether you are performing quick browser tweaks, building complex automation pipelines, or needing local tool compatibility, these methods provide the flexibility to build your own perfect lab environment. For those ready to start scripting, don’t forget to explore the CML Community GitHub for a vast library of scripts and sample lab topologies to help get you started.
Save 25% on Cisco Modeling Labs
Join Cisco Networking Academy
Prep for your first cert or your first career.
Join Cisco Networking Academy
