After long anticipation, Cisco’s Virtual Internet Routing Lab (VIRL) is now publicly available. VIRL is a network design and simulation environment that includes a GNS3-like frontend GUI to visually build network topologies, and an OpenStack based backend which includes IOSv, IOS XRv, NX-OSv, & CSR1000v software images that run on the built-in hypervisor. In this post I’m going to outline how you can use VIRL to prepare for the CCIE Routing & Switching Version 5.0 Lab Exam in conjunction with INE’s CCIE RSv5 Advanced Technologies Labs.

The first step of course is to get a copy of VIRL. VIRL is currently available for purchase from virl.cisco.com in two forms, a “Personal Edition” for a $200 annual license, and an “Academic Version” for an $80 annual license. Functionally these two versions are the same. Next is to install VIRL on a hypervisor of your choosing, such as VMWare ESXi, Fusion, or Player. Make sure to follow the installation guides in the VIRL documentation, because the install is not a very straightforward process. When installing it on VMWare Player I ran into a problem with the NTPd not syncing, which resulted in the license key not being able to register. In my case I had to edit the /etc/ntp.conf file manually to specify a new NTP server, which isn’t listed as a step in the current install guide. If you run into problems during install check the VIRL support community, as it’s likely that someone has already run into your particular install issue, and a workaround may be listed there.

Once VIRL and VM Maestro (the GUI frontend) is up and running, the next step is to build your topology. For the INE CCIE RSv5 Advanced Technology Labs, this topology will be 10 IOS or IOS XE instances that are connected to a single vSwitch. All you need to do to build this is to add the 10 IOS instances, and then connect them all to a single “Multipoint Connection”. Logical network segments will then later be built based on the initial configurations that you load on the routers for a specific lab. The end result of the topology should look something like this:

You may also want to add some basic customization to the topology file and the VM Maestro interface. I set the hostnames of the devices to R1 – R10 by clicking on the router icon, then setting the “Name” under the Properties tab.

Next under the File > Preferences > Terminal > Cisco Terminal you can set the options to use your own terminal software instead of the built in one. In my case I set the “Title format” variable to “%s”, which makes it show just the hostname in the SecureCRT tab, and set the “Telnet command” to “C:\Program Files\VanDyke Software\SecureCRT\SecureCRT.exe /T /N %t /TELNET %h %p”, which makes it spawn a SecureCRT tabbed window when I want to open the CLI to the routers. Your options of course may vary depending on your terminal software and its install location.

Next, click the “Launch Simulation” button on the topology to start the routers. Assuming everything is correct with your install, and you have enough CPU & memory resources, the instances should boot and show the “ACTIVE” state, similar to what you see below:

If you right click on the device name you’ll see the option to telnet to the console port. Note that the port number changes every time you restart the simulation, so I found it easier just to launch the telnet sessions from here instead of creating manual sessions under the SecureCRT database.

You should now be able to connect to the consoles of the routers and see them boot, such as you see below:

R1 con0 is now available
Press RETURN to get started.
**************************************************************************
* IOSv is strictly limited to use for evaluation, demonstration and IOS *
* education. IOSv is provided as-is and is not supported by Cisco's *
* Technical Advisory Center. Any use or disclosure, in whole or in part, *
* of the IOSv Software or Documentation to any third party for any *
* purposes is expressly prohibited except as otherwise authorized by *
* Cisco in writing. *
**************************************************************************
R1>
R1>enable
R1#show version
Cisco IOS Software, IOSv Software (VIOS-ADVENTERPRISEK9-M), Experimental Version 15.4(20141119:013030) [jsfeng-V154_3_M 107]
Copyright (c) 1986-2014 by Cisco Systems, Inc.
Compiled Tue 18-Nov-14 20:30 by jsfeng
ROM: Bootstrap program is IOSv
R1 uptime is 46 minutes
System returned to ROM by reload
System image file is "flash0:/vios-adventerprisek9-m"
Last reload reason: Unknown reason
This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.
A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html
If you require further assistance please contact us by sending email to
export@cisco.com.
Cisco IOSv (revision 1.0) with with 484729K/37888K bytes of memory.
Processor board ID 9B2DD0A36JBLXZY7SLJTF
2 Gigabit Ethernet interfaces
DRAM configuration is 72 bits wide with parity disabled.
256K bytes of non-volatile configuration memory.
2097152K bytes of ATA System CompactFlash 0 (Read/Write)
0K bytes of ATA CompactFlash 1 (Read/Write)
0K bytes of ATA CompactFlash 2 (Read/Write)
1008K bytes of ATA CompactFlash 3 (Read/Write)
Configuration register is 0x0
R1#

With this basic topology you should have the 10 IOSv instances connected on their Gig0/1 interface to the same segment. The Gig0/0 interface is used for scripting inside the VIRL application, and can be shutdown for our purposes. The end result after the images boot should be something similar to this:

Next you can load your initial configs for the lab you want to work on, and you’re up and running! I’ve taken the liberty of converting the CSR1000v formatted initial configs for our Advanced Technologies Labs to the IOSv format, as the two platforms use different interface numbering. Click here to download these initial configs as well as the .virl topology file that I created.

About Brian McGahan, CCIE #8593, CCDE #2013::13:

Brian McGahan was one of the youngest engineers in the world to obtain the CCIE, having achieved his first CCIE in Routing & Switching at the age of 20 in 2002. Brian has been teaching and developing CCIE training courses for over 10 years, and has assisted thousands of engineers in obtaining their CCIE certification. When not teaching or developing new products Brian consults with large ISPs and enterprise customers in the midwest region of the United States.

This is actually on my Microsoft Surface Pro 3, which has 8GB RAM. I haven’t extensively tested features yet, but the routers boot fine and there is little delay on the CLI. Ideally you would run it on a larger machine but the IOSv image is more memory efficient than the CSR1000v image.

One note if you are planning to use VMware Fusion on Mac OS X: Don’t use Fusion 7. Make sure you are running Fusion version 6. Version 7 won’t allow the Nova Compute service to come up properly, and you won’t be able to instantiate any of your VMs (your virtual routers).

This looks good and I’m glad it’s finally out. Could you perhaps elaborate on the benefits of using the INE rack rentals over using the CML/VIRL environment? I have my CCIE R&S and I’m currently preparing for CCIE SP (written will probably be v3.0 and practical v4.0). I have a number of rack rental tokens to use and I want to consider which environment would be better suited… speaking of which – what are your plans with CCIE SPv4 materials?

VIRL doesn’t support layer 2 switching, and it’s capped at 15 devices. For the full scale labs and troubleshooting labs we use 20 routers and up to 4 switches. You can do all the Advanced Technologies Labs on VIRL with the exception of the LAN Switching section.

I’m not sure what the official VIRL version looks like but if it comes with User Workspace Management (UWM) you may add your own VMs to Maestro. There is a IOSv_L2 image which supports basic L2 features similar to L2IOU.

it sounds interesting.
i’m more interested in DC track rather than the R&S track, and it doesnt seems that virl will help with the DC.
however, as the platform built on openstack, i think they should be able to do something for DC track. what do you think ? and is there any news or rumors about that ?

According to the license agreement “Individuals who are affiliated with an academic institution are eligible to purchase the VIRL Personal Edition Academic Version. This includes faculty, staff, students and parents of any public or private K-12 institution or Higher Education institution.”

That’s pretty broad. Im taking it as….Im the father of a kindergartener, so I qualify.

I’ve had numerous issues with lots of layer 2 related features across IOSv and XRv on the beta version of VIRL my company has had access to for sometime. These have consumed massive amounts of time and led to hair loss level frustration, they’ve also however been valuable in forcing me into low levels of troubleshooting several technologies before I break down and ask Cisco if they are supported. The list is somewhat long, but one of the most annoying is dot1q, based on what you’ve published I’m assuming it now works in the current version? (my version runs 15.3)

Also, just as an FYI for others, the most frustrating for me bar none was L2VPNs, specifically on XRv. The control plane works like a champ so it looks fantastic, the data plane however is another story…

802.1q trunking works, but no other layer 2 features work. In the case of IOS XRv you can build the control plane for L2VPN but the data plane does not work. Hopefully it’ll be fixed in later releases.

VIRL doesn’t support layer 2 switching currently. There are pros and cons of both physical and virtual setups. In our rack rentals we use virtual routers and physical switches, which are the best of both worlds.

Brian,
I have the VIRL setup, up and running. I am able to create INE’s CCIE SP topologies based on sections, but do you have a netmap file (.virl) file for SP’s topology just like what was shared for RSv5?

Hi, I bought and i have installed cisco virl, It is work properly. My question i’m watching your site about CCIE Routing & Switching v5 Workbook. This Workbook v5 together to the cisco virl allow me to follow the tracks correctly on your workbook? By INE.VIRL.initial.configs, downloaded from your site, together WB v5 & Cisco virl has sense to study with this material? If i follow the lab example “EIGRP MD5 & SHA-256 Authentication” (on your site) and i load the eigrp initial configuration with cisco virl i’ll find correspondence?

What is the point of VIRL when GNS3 is free? What features do you get with a price tag of $200? I am in need of the layer 2 features. I realize you can’t use NX-OS on GNS3 but there really isn’t much difference from IOS.

Have just spent 48hrs bringing the VIRL environment to its latest incarnation VIRL.0.9.242.

There have been some changes that make this easily found advise slightly out of date now with the Multipoint connector no longer supported. “Crashed in attempted use once imported”. Useful information and approach though, just delete multipoint connector and insert unmanaged switch and relevant detail.
Cheers, Silyrixxx

Leave a Reply

Currently you have JavaScript disabled. In order to post comments, please make sure JavaScript and Cookies are enabled, and reload the page.Click here for instructions on how to enable JavaScript in your browser.