How to Install GNS3 Server VM on Proxmox 8

Published by

on

Time to read:

5–8 minutes

In this article, we are going to go over how to install the GNS3 VM (Virtual Machine) on a Proxmox 8 instance. This assumes that you already have your Proxmox server set up and ready to go. Additionally, I am assuming that you have a way to get files onto the Proxmox server through the CLI (Command Line Interface), for example, you could use WinSCP1 to transfer the files to the server or in my case I am going to use a locally hosted HTTP (Hyper-Text Transfer Protocol) server hosted on my Proxmox instance.

What is GNS3?

GNS3 (Graphical Network Simulator 3) is a software tool that allows you to run virtualised network devices to simulate a real network environment. This tool lets you get hands-on with configuring devices and fault-finding networking-related problems without the need to have any physical networking equipment.


  1. SECTION I – Download Latest VM Package
    1. SECTION I – A – Official Website
      1. FIGURE 1 – VMware ESXi Download
    2. SECTION I – B – GitHub Repository
      1. FIGURE 2 – VMware ESXi Download
  2. SECTION II – Creating the VM
    1. SECTION II – A – Create VM
      1. FIGURE 3 – Create VM
      2. FIGURE 4 – Guest OS
      3. FIGURE 5 – VM System Settings
      4. FIGURE 6 – VM Disks
      5. FIGURE 7 – VM CPU
      6. FIGURE 8 – VM Memory
      7. FIGURE 9 – VM Network
      8. FIGURE 10 – Confirm VM Settings
    2. SECTION II – B – Attach Disks to VM
      1. FIGURE 11 – Extract All From ZIP File
      2. FIGURE 12 – Extract ZIP File
      3. FIGURE 13 – Extracted OVA File
      4. FIGURE 14 – TMP Directory
      5. FIGURE 15 – WGET OVA File
      6. FIGURE 16 – Extract OVA File
      7. FIGURE 17 – GNS3 VM ID
      8. FIGURE 18 – VM Hardware Settings
      9. FIGURE 19 – Add Unused Disk 0
      10. FIGURE 20 – Add Unused Disk 1
    3. SECTION II – C – Set VM Disk Boot Order
      1. FIGURE 21 – VM Options
      2. FIGURE 22 – Edit VM Boot Order
  3. SECTION III – Start VM
    1. FIGURE 23 – Start VM Now
  4. SECTION IV – Footnotes

SECTION I – Download Latest VM Package

Before we can do anything we need to get a copy of the latest GNS3 server VM downloaded. There are 2 different ways you can get a copy; from the official GNS3 website or the official GNS3 GitHub repository.

Carry out with the steps in ‘Section I – A‘ or ‘Section I – B

SECTION I – A – Official Website

  1. Navigate to the following website – Software | GNS3.
  2. Click the download button for the ‘VMware ESXi’ version.
FIGURE 1 – VMware ESXi Download

SECTION I – B – GitHub Repository

  1. Navigate to the following website – Releases · GNS3/gns3-gui (github.com).
  2. Locate the ‘GNS3.VM.VMware.ESXI.(version).zip’ file under the ‘Assets’ heading on the repository page.
  3. Click on the located file from step 2 to start the download.
FIGURE 2 – VMware ESXi Download

SECTION II – Creating the VM

Now we have the required files to be able to create the VM we need to create the actual VM. Make sure you have access to your Proxmox instance Web GUI (Graphical User Interface) for the following sections. You should also make sure that the VM files that you downloaded are accessible from your Proxmox instance.

SECTION II – A – Create VM

  1. Navigate to your Proxmox Web GUI using either ‘IP:8006’ or ‘hostname:8006’ to access it.
  2. In the top right-hand corner of the page select the ‘Create VM’ button.
  3. Make sure the correct Proxmox node is selected and should you need to place the VM in an appropriate resource pool then do that here.
  4. Give the VM an appropriate name and then click the ‘Next’ button.
  5. FIGURE 3 – Create VM
  6. Under the OS (Operating System) tab, select the ‘Do not use any media’ radio button and make sure that the ‘Guest OS’ is set to ‘Type: Linux’ and ‘Version: 6.x – 2.6 Kernel’ and then click the ‘Next’ button.
  7. FIGURE 4 – Guest OS
  8. Under the System tab, you can leave all the settings default, however, you need to make sure the ‘SCSI Controller’ is set to ‘VirtIO SCSI’ and then click the ‘Next’ button.
  9. FIGURE 5 – VM System Settings
  10. Under the disks tab, you can leave it blank and then click the ‘Next’ button.
  11. FIGURE 6 – VM Disks
  12. Under the CPU tab, you can set however many ‘Sockets’ and ‘Cores’ appropriate for your environment. Make sure to set the ‘Type’ to ‘host’ and then click the ‘Next’ button.
  13. FIGURE 7 – VM CPU
  14. Under the Memory tab, set however much memory is appropriate to your environment and then click the ‘Next’ button.
  15. FIGURE 8 – VM Memory
  16. Under the Network tab, you can leave all the settings default, you just need to make sure that the VM is in the correct bridge appropriate to your environment and then click the ‘Next’ button.
  17. FIGURE 9 – VM Network
  18. On the Confirm page, make sure that you are happy with all the settings that you have confirmed and then click the ‘Finish’ button.
  19. FIGURE 10 – Confirm VM Settings

The VM will now be created and will appear in your VM list for the Proxmox host. You will not be able to start the VM because it has not disk or boot media attached.

SECTION II – B – Attach Disks to VM

As mentioned earlier in the article make sure that the .zip file you downloaded in ‘Section I‘ is reachable from your Proxmox instance.

  1. Open a Windows file explorer window and locate the downloaded server .zip file.
  2. Right click on it and select ‘Extract All….’.
  3. FIGURE 11 – Extract All From ZIP File
  4. If you are happy with the default file path then click the ‘Extract’ button.
  5. FIGURE 12 – Extract ZIP File
  6. Once extracted you should see a file in the newly created folder called ‘GNS3 VM.ova’.
  7. FIGURE 13 – Extracted OVA File
  8. This part of the guide may differ depending on your setup, the goal here is to get the extracted ‘.ova’ file onto the Proxmox instance so that it is accessible from the CLI. In my set up, I have the file hosted on a local HTTP server and using the ‘wget’ command I can get the file downloaded onto the Proxmox instance.
  9. wget (URL)

    FIGURE 14 – TMP Directory
    FIGURE 15 – WGET OVA File
  10. Extract the ‘.ova’ file using the following command:
  11. tar -xvf ‘GNS3 VM.ova’

    FIGURE 16 – Extract OVA File
  12. Navigate to the Web GUI of your Proxmox instance and under the ‘VM’ folder in the left-hand navigation locate the ID number of the GNS3 server VM. In my case, it is ‘119’.
  13. FIGURE 17 – GNS3 VM ID
  14. Back onto the Proxmox CLI run the following 2 commands to attach the extracted ‘.vmdk’ disk files to the VM.
  15. qm importdisk (VM ID) GNS3_VM-disk1.vmdk local-lvm -format qcow2
    qm importdisk (VM ID) GNS3_VM-disk2.vmdk local-lvm -format qcow2

  16. Navigate back to the Web GUI of the Proxmox instance select the GNS3 VM and then navigate to the ‘Hardware’ tab. Notice that you will now see ‘Unused Disk 0’ and ‘Unused Disk 1’.
  17. FIGURE 18 – VM Hardware Settings
  18. Double-click on the first unused disk ‘Unused Disk 0’.
  19. Leave all the settings default and then click the ‘Add’ button.
  20. FIGURE 19 – Add Unused Disk 0
  21. Repeat steps 10 and 11 for ‘Unused Disk 1’.
  22. FIGURE 20 – Add Unused Disk 1

SECTION II – C – Set VM Disk Boot Order

  1. Within the Web GUI for the Proxmox instance navigate to the GNS3 VM and then to the ‘Options’ tab.
  2. FIGURE 21 – VM Options
  3. Select the ‘Boot Order’ option and then click the ‘Edit’ button.
  4. Deselect the ‘ide2’ and ‘net0’ devices and select the ‘scsi0’ device then click the ‘OK’ button.
  5. FIGURE 22 – Edit VM Boot Order

SECTION III – Start VM

  1. Within the Web GUI for the Proxmox instance navigate to the GNS3 VM and then to the ‘Console’ tab.
  2. Click the ‘Start Now’ button.
  3. FIGURE 23 – Start VM Now

Once the VM has booted you now have a GNS3 VM server instance running on your Proxmox server. You can set the IP (Internet Protocol) address of the server or let it pick an IP up via DHCP (Dynamic Host Configuration Protocol). Then you can connect to the server via a web browser or using the GNS3 Client – Software | GNS3.

SECTION IV – Footnotes

  1. WinSCP – Windows Secure Copy Protocol, is an open source SSH (Secure Shell) based file transfer protocol. To download WinSCP use the following link – WinSCP :: Official Site :: Free SFTP and FTP client for Windows ↩︎

2 responses to “How to Install GNS3 Server VM on Proxmox 8”

  1. Ivan Marrese Avatar
    Ivan Marrese

    Nice job, samswinson100

    Just a simple but crucial question…
    When GNS3 server (Proxmox) and client (My PC or Macos) are fully up, I could start to simulate my real Data Center. May I use in the virtual Lab real IPs of real Data Center or there are some risks (e.g, IP conflicts o routing problems)??
    Consider that Proxmox VM subnet and my PC/Macos IP are able to reach real Data Center.

    Thanks

    Ivan

    Like

    1. samswinson100 Avatar

      Hey Ivan,

      Errrrm I can’t say that I have ever set up a lab that had connectivity to the live environment I have always had them physically seperated so that I can use the real IPs and simulate any configuration changes or faults as close to real as possible.

      By default, I don’t think any GNS3 virtual hosts can talk out of the physical NIC of the server or workstation unless you specifially configure it using something like the cloud device. So as far as I know although your lab has connectivity to your real DC none of your lab devices will be able to talk to the real DC so you can use the live IPs.

      Hope this helps, as I say I haven’t had a setup like this so can’t give a concete answer only what I think for having used GNS3.

      Like

Leave a reply to samswinson100 Cancel reply