It is a tool that can be powerful, provided you have consultants help you put it together. The 2nd year at BCIT, 1/3 the classes use it. The networking courses, firewall courses. The tool seems to be built upon a Linux VM, which acts as a “multi-platform” process. The VM inside always runs linux, bc I suspect GNS3 relies on linux libraries (ie. QEMU, Dynamips) to work. But the front-end that visualizes the computers, routers, switches, and firewalls seems to built in the native operating system’s windowing system. The front end just communicates the configuration built by the front-end, to the VM, to wires up the VM’s and bridges, inside the Linux VM aka GNS3 VM.
GNS3 is primarily used to fill the gap where VM hypervisors could not fill. Cisco routers, and switches cannot be emulated in x86 hypervisors. They can be emulated, but those seem primarily on the Linux platform. And the functionality of the switches and routers, cannot be fully demonstrated, without them being connected up.
Now here is the tricky part, where I think you might need consultants to build a working installation of GNS3. 1) It is very resource heavy. Inside the GNS3 VM, it is essential running a emulator for each of the devices you drag and drop into your project workspace. And when you start the machine in the GUI, it starts the emulator in the GNS3 VM. You need 32G to do any real work. 2) The default installation has almost no devices of use for you. You can accomplish the same thing in GNS3 with the default installation, by physically pulling the devices from your old router and computer box in your house and wire them up physically. There is no router that is default available in GNS3. You have to search far and wide on the internet to find GNS3 images to install, in GNS3. I searched a very long time on internet, before I just decided to (ahem) pirate the images from the classroom, to run on my laptop. Even then, I couldn’t completely emulate the perfectly pristine installation they had in the classroom. My network cards in the Cisco routers were different from the class’s GNS3 router images. Some images did not run at all in my GNS3 VM, like Palo Alto firewalls. Cisco Layer3 switches were prone to crash in my laptop’s GNS3.
I assume Azure and AWS elements are foreign to GNS3 to simulate, for now, but probably shouldn’t be in future. And to simulate AWS and/or Azure, the GNS3 GUI doesn’t even need to have a VM. A extra icon for Azure and one for AWS, will represent AWS and/Azure. Dragging the icon will create a link to AWS/Azure cloud, and any AWS VM/switches/routers icons in AWS has to connect to that cloud. Same with Azure. Instead of creating the elements in the GNS3 VM, it just creates them in the AWS or Azure account. But that is all speculation on my end.
I assume GNS3 GUI would just send the right commands to AWS and create the networks and VM, so it displays in AWS console, like below.
And would create similarly in MS Azure, where it shows in portal.azure.com, like: