Maybe this article will not bring to your knowledge something new, but it happened to me in the recent past that not all the friends and collegues I was talking with were aware of some of the best softwares a Network guy can use to practice with technologies that are in use in the market. This is the reason why I decided to quickly talk about softwares you can download for free to build your own virtual networking lab.
- Cisco Packet Tracer
I know, if you work in the Networking field and you start a certification path with Cisco is impossible that you don’t know Packet Tracer. This is definitely a great and free (you need a Cisco Academy User Account) resource that is very good for the basics. When I started using it some years ago it was missing really a lot of features and commands but was more than enough to study for CCNA certification. At the moment the latest version is 6.2 and Cisco improves this software with several features.
Pros: I can say that this is a must have for people studying for CCNA: it’s free, it’s enough complex and it doesn’t require too many hardware resources from your PC.
Cons: Definitely not enough if you want to have an experience that is closer to a real hands-on. Moreover the software is still missing a lot of commands and outputs and it runs “only” on Windows and Ubuntu GNU/Linux (and possibly on all Debian like distros).
- GNS3 version 1.0 and above
Raise your hand if you at least heard once in your life/career about GNS3! I am sure your hand is up 😀
GNS3 has always been one of the best software ever to practice on real equipments. At the beginning and since version 1.0 came out, it was a must have to practice on Routing with real Cisco IOS devices. This was possible thanks to the project Dynamips that was giving the opportunity to run Cisco IOS .bin files directly on PCs without having a real router. It was also possible to run several other platforms than Cisco. For example, with some works, it was possible to use JunOS, plus connect GNS3 to real equipments, run servers thanks to the integration with qemu and so on. Unfortunately GNS3 has always been considered very weak on the emulation of switches for reasons that I will not describe in this short overview.
In the last months (almost 1 year for the official and first public release), however, the new version of GNS3 came out. The huge improvement from the previous version is definitely the integration with IOU. This is where a lot of people get lost… IOU? What do you mean? What is that?
IOU is the acronym for IOS On Unix. Some time ago (not sure when exactly) Cisco started to compile its famous operating system called IOS on Unix platforms. As a result there are some IOS images that are .bin files compiled to be executed on Unix (and then GNU/Linux). Why is that so important? For us, using virtual labs, Dynamips was starting to be very limited because it was not capable to run latest IOS versions like the 15.X family (with the only exception of an – very unstable – image for a 7200 platform). Thanks to IOU bin files, if you have a GNU/Linux operating system and a license from Cisco, you can run the very latest releases of IOS directly on the PC. Be aware that IOU is meant for Cisco employees only 😉
Well, GNS3, starting from version 1.0, integrated the support to IOU. As a result you can build topologies like in the past but running also IOU images and not only IOS with Dynamips (still supported and updated). Therefore is it possible to practice with commands and outputs from the very latest 15.X IOS versions.
Another huge improvement is that IOU images are not only to run Routers (called L3) images but also some Switch (called L2) images. As a consequence it is now possible to practice on Switches with GNS3! There are several other things you can do with GNS3 but, again, this is just a quick overview.
Pros: GNS3 is a very flexible and powerful tool. The team that is developing it is working very hard to provide new features very often and finally – with some limitations – it’s possible to practice on switches without buying real equipments.
Cons: at the beginning is not easy to understand how to use it. The support to IOU is indeed asking to have GNS3 running on GNU/Linux. Anyway the GNS3 website is full of explanations and the Community is really glad to help people new to the software.
- Cisco IOU Web Interface – Web based platform for IOU
Before GNS3 came out with the support to IOU images, the only way to practice and build topologies easily was to use what is called IOUweb. According to what the father of IOUWeb – Andrea Dainese – is writing on his website, IOUWeb has been created to “manage Cisco IOU images using a web browser“. I used the Andrea’s tool for a while and it is a great tool. At the moment, anyway, I don’t think that it is really the best way to take to practice on your labs. Mainly because it is very limited compared to GNS3 but alo compared to the new tool on which Andrea Dainese is now working: UnetLab (will talk about it in few rows).
Pros: it is basically the first platform to build topologies using IOU in a quite easy way. It’s still a good resource if you only need to run IOU images and you need to do it using Web interface (for example if you have ESXi access at work but limited rights to access only to port 80).
Cons: topologies are created manually writing a file called NETMAP that is not intuitive at the beginning and is also time consuming. Is it only possible to run L2 and L3 images so you can’t really build a complete topology with servers and other services. Last, but not least, it is now outdated.
- Unified Networking Lab
This is the new project of Andrea Dainese, the father of Cisco IOU Web Interface. Unetlab is intended to build very complex network topologies using the web browser. This software is distributed as a Virtual Machine that you can run basically on all platforms. All you need to do is to downlaod the provided .ova file, start it within your favourite Hypervisor (suggested vmware) and add the binary files of some of the tens supported platforms. At the moment is it possible to run a quite big list of virtual devices.
To be honest I am looking with big interest at this project but I have not yet started using it deeply. The main difference with GNS3 is that this is again a Web based interface – like IOUWeb – that runs within virtual machine but we will see if it will have the same flexibility of GNS3 where, thanks to qemu and Virtualbox support, you don’t need to wait for new platforms to be added from the software team.
Pros: web based and ready to use. You only need to import the .ova, start the virtual machine and only add the supported virtual images of devices to start building topologies.
Cons: as this project will run within a virtual machine it will be necessary to have enough hardware resources to be assigned to UnetLab. Moreover I think this project is still missing some flexibility in adding supported platforms.
The mentioned “tools” to build network topologies are only some of the best around to practice with labs. There are obviuously some others that I will not describe. As a main example I can cite Cisco VIRL but I wanted to only talk about free and best resources around. I hope some of you will find the article interesting.
If you would like to be informed about new posts I will publish on the blog you can subscribe to the newsletter: