One of the most difficult things for people who are starting out in a networking career is getting their hands on the equipment. Whether you are studying for Cisco certification or just wanting to test certain network behaviors in a lab, no one would argue that practicing is the best way to learn.
I have seen people spend hundreds or thousands of dollars (myself included) buying used networking equipment in order to build a home Cisco lab to gain practical experiences and study for certification exams. Until a few years ago it was the only option available, or you had to rent lab hours through one of the training companies.
Other Simulation Tools
GNS3 is a well-known free network simulation platform that has been around for many years. Cisco IOS on UNIX (IOU) is another option for running Cisco routers in a virtual environment. It is a fully working version of IOS that runs as a user mode UNIX (Solaris) process. IOU was built as a native Solaris image and runs just like any other program. One key advantage that Cisco IOU has is that it does not require nearly as much resources as GNS3 and VIRL would require. However, the legality of the source of Cisco images for GNS3 is questionable.
Figure 1. Cisco VIRL Network Topology
If you are not an authorized Cisco employee or trusted partner, usage of Cisco IOU is potentially a legal gray area. Because of lack of publicity and availability to average certification students and network engineers, online resources are limited and setting up a network takes much more effort. Also, due to missing features and delays in supporting the recent Cisco image releases, Cisco is not recommending them to engineers and students.
Here Comes Cisco VIRL
Cisco Virtual Internet Routing Lab (VIRL) is a software tool Cisco developed to build and run network simulations without the need for physical hardware.
Under the hood, VIRL is an OpenStack-based platform that runs IOSv, IOSvL2, IOS XRv, NX-OSv, CSR1000v, and ASAv software images on the built-in hypervisor. VIRL provides a scalable, extensible network design and simulation environment using the VM Maestro frontend. Recently, I have seen extensive development and improvement made on the browser based operations using HTML5. VIRL also has extensive ability to integrate with third-party vendor virtual machines such as Juniper, Palo Alto Networks, Fortinet, F5 BigIP, Extreme Networks, Arista, Alcatel, Citrix and more.
VIRL comes in two different editions – Personal Edition and Academic Edition. Both have the same features except the Academic Edition is cheaper. At the time of writing, Academic Edition costs $79.99 USD per annum and Personal Edition costs $199.99 USD per year. VIRL has a license limit to simulate up to 20 Cisco nodes at a time. You can pay an extra $100 USD to upgrade to 30 Cisco nodes, maximum. To qualify to purchase the Academic Edition, you must be faculty, staff and students of any public or private K-12 institution or Higher Education institution.
Cisco VIRL is community-supported and is designed for individual users. For enterprise users who want TAC support, in-depth documentation, training and more, there is Cisco Modeling Labs (CML), an enterprise version of VIRL. Of course the CML version costs much more.
Why VIRL Is Better
Official Cisco images
VIRL comes with a complete set of legal and licensed Cisco IOS images that are the same as those running on physical routers. (I’m sure they were tweaked to optimize them running in a virtual environment). New Cisco IOS releases are provided on a regular basis.
Runs on Most Computers
The minimum hardware requirement for VIRL is an Intel-based computer with four CPU cores, 8GB of RAM and 70 GB free disk space. Of course more resources allow for larger simulations. Cisco suggests larger memory, such as 12GB for 20 nodes, 15GB for 30 nodes, or 18GB for 40 nodes. Each Cisco IOS-XRv node requires 3GB of memory to launch. In my experience, the only thing that is likely to stop you is the amount of memory installed on the computer. Computer memory is now inexpensive. You just need to ensure that your computer has enough empty slots to install additional memory.
Flexible Installation Options
You can install a VIRL on an enterprise-grade server infrastructure, a desktop computer, a laptop, or even on the cloud. You can run it as a Virtual Machine on VMware ESXi, VMware Workstation, Player or VMware Fusion for Mac OS. As opposed to running on a hypervisor, some choose to build VIRL on a bare-metal computer to achieve maximum performance.
Once your VIRL lab is up and running, it is an all-in-one virtual networking lab that has no wires and cords attached. When you run it as a VM, you can scale, migrate and implement high availability (HA) by taking advantage of the features that VMware infrastructure has to offer.
The AutoNetkit, which comes with VIRL, can assign IP addresses to the nodes automatically when they launch, and it will even set up some basic routing protocols for you. The bootstrap configuration gives you a fully converged network as soon as they are launched. And you can go straight to the features and focus on what you want to test. This is a cool feature for network engineers who want to set up a one-time temporary environment to look up commands and test certain features. If you were building a network topology from scratch, or creating a mockup a production environment, manual IP addressing is recommended.
Community Support by Developers
VIRL is supported by a community full of good people like you. Questions are often answered first-hand by developers and engineers. The Cisco VIRL team offers monthly webinars and newsletters to keep the community updated on new feature releases and announcements. You can find the online community on Cisco Learning Network at: https://learningnetwork.cisco.com/groups/virl
I wish VIRL had been available when I first started learning Cisco networking technology and taking CCIE exams. I have used GNS3, IOU and other simulation and emulation tools. They all had their advantages and disadvantages. When looking at them together, there are four main reasons I recommend VIRL to network engineers, certification students and trainers.
- Developed by Cisco, running official Cisco images. No concerns about legal or software licensing issues.
- Has a production-grade, commercial version (CML - Cisco Modeling Lab) available to enterprise customers. It runs essentially the same code as VIRL. Cisco has made VIRL much more affordable for personal and academic use, without the price tag and TAC support. Why not take advantage of it?
- Runs on OpenStack and is SDN-ready. If you are interested in learning about Software Defined Network, VIRL has direct integration with OpenDaylight.
- Is actively developed by Cisco. New features and updates are released regularly.
About the Author
Jack Wang, CCIE #32450, is a principle network consultant and founder of Speak Network Solutions. He has been designing and implementing enterprise and large-scale service provider networks as well as teaching and blogging about advanced technologies. His current focus includes Software Defined Networking (SDN), data centers, Amazon AWS cloud integration, wireless, WAN architectures and design. Jack holds B.S. in Engineering and M.S. in Computer Science.