(Last Updated On: September 11, 2019)

Welcome to our guide on how to install GNS3 Network Simulator on Debian 10 Buster. GNS3 is free to use and open-source Network Simulator used to simulate, configure, test and troubleshoot virtual and real networks. GNS3 has helped in virtualizing real hardware devices and preparation for certification exams such as the Cisco CCNA, CCNP, CCIE, Juniper certifications e.t.c. With GNS3, you can test interoperability between many vendors and even try out esoteric setups using network technologies with SDN, NFV, Linux, and Docker.

For Ubuntu, use How to install GNS3 on Ubuntu guide.

Features of GNS3

  • Fully free and Open Source – No monthly or yearly license fees
  • There is no limit on the number of devices supported – CPU and RAM hardware is your only limitation
  • GNS3 supports all VIRL images (IOSv, IOSvL2, IOS-XRv, CSR1000v, NX-OSv, ASAv)
  • GNS3 can run with or without hypervisors in multi-vendor environments
  • It has support for multiple switching options (ESW16 Etherswitch, IOU/IOL Layer 2 images, VIRL IOSvL2)
  • GNS3 supports both free and paid hypervisors – Virtualbox, VMware Workstation, VMware Player, ESXi, Fusion
  • GNS3 has native support for Linux without the need for additional virtualization software

GNS3 Components

GNS3 consists of two software components:

  • The GNS3-all-in-one software (GUI)
  • The GNS3 virtual machine (VM)

Install GNS3 on Debian 10 (Buster)

Pre-built binary packages for GNS3 are available on Ubuntu PPA repository. Add this to your Debian 10 Desktop by running the commands:

sudo tee /etc/apt/sources.list.d/gns3.list <<EOF
deb http://ppa.launchpad.net/gns3/ppa/ubuntu bionic main
deb-src http://ppa.launchpad.net/gns3/ppa/ubuntu bionic main
EOF

Import GGP Key:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F88F6D313016330404F710FC9A2FD067A2E3EF7B

Once the key is imported, fire the commands on your terminal to install GNS3 on Debian 10 (Buster).

sudo apt update
sudo apt install gns3-gui

See shared output:

$ sudo apt update
Hit:1 http://ppa.launchpad.net/gns3/ppa/ubuntu bionic InRelease                
Hit:2 http://deb.debian.org/debian buster InRelease                            
Hit:3 http://security.debian.org/debian-security buster/updates InRelease
Get:4 http://ppa.launchpad.net/gns3/ppa/ubuntu bionic/main amd64 Packages [1,740 B]
Get:5 http://ppa.launchpad.net/gns3/ppa/ubuntu bionic/main Translation-en [836 B]
Fetched 2,576 B in 2s (1,262 B/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
206 packages can be upgraded. Run 'apt list --upgradable' to see them.

$ sudo apt install gns3-gui
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  augeas-lenses cpulimit dmeventd dynamips gns3-server ibverbs-providers
  ipxe-qemu libaio1 libaugeas0 libcapstone3 libdevmapper-event1.02.1 libfdt1
  libibverbs1 liblvm2cmd2.03 libnetcf1 libqt5designer5 libqt5help5 libqt5sql5
  libqt5sql5-sqlite libqt5test5 libqt5websockets5 libqt5xml5 librdmacm1
  libreadline5 libspice-server1 libvdeplug2 libvirglrenderer0 libvirt-clients
  libvirt-daemon libvirt-daemon-system libvirt0 libvncclient1 libvncserver1
  libxencall1 libxendevicemodel1 libxenevtchn1 libxenforeignmemory1
  libxengnttab1 libxenmisc4.11 libxenstore3.0 libxentoolcore1 libxentoollog1
  libxml2-utils lvm2 netcat-openbsd ovmf python3-pyqt5 python3-pyqt5.qtsvg
  python3-pyqt5.qtwebsockets python3-sip qemu-kvm qemu-system-common
  qemu-system-data qemu-system-gui qemu-system-x86 qemu-utils seabios
  thin-provisioning-tools ubridge vpcs x11vnc x11vnc-data xvfb
Suggested packages:
  augeas-doc gns3 augeas-tools libvirt-daemon-driver-storage-gluster
  libvirt-daemon-driver-storage-rbd libvirt-daemon-driver-storage-zfs numad
  auditd nfs-common open-iscsi pm-utils radvd systemtap zfsutils
  python3-pyqt5-dbg samba vde2 qemu-block-extra sgabios debootstrap
The following NEW packages will be installed:
  augeas-lenses cpulimit dmeventd dynamips gns3-gui gns3-server
  ibverbs-providers ipxe-qemu libaio1 libaugeas0 libcapstone3
  libdevmapper-event1.02.1 libfdt1 libibverbs1 liblvm2cmd2.03 libnetcf1
  libqt5designer5 libqt5help5 libqt5sql5 libqt5sql5-sqlite libqt5test5
  libqt5websockets5 libqt5xml5 librdmacm1 libreadline5 libspice-server1
  libvdeplug2 libvirglrenderer0 libvirt-clients libvirt-daemon
  libvirt-daemon-system libvirt0 libvncclient1 libvncserver1 libxencall1
  libxendevicemodel1 libxenevtchn1 libxenforeignmemory1 libxengnttab1
  libxenmisc4.11 libxenstore3.0 libxentoolcore1 libxentoollog1 libxml2-utils
  lvm2 netcat-openbsd ovmf python3-pyqt5 python3-pyqt5.qtsvg
  python3-pyqt5.qtwebsockets python3-sip qemu-kvm qemu-system-common
  qemu-system-data qemu-system-gui qemu-system-x86 qemu-utils seabios
  thin-provisioning-tools ubridge vpcs x11vnc x11vnc-data xvfb
0 upgraded, 64 newly installed, 0 to remove and 206 not upgraded.
Need to get 51.9 MB of archives.
After this operation, 179 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

Choose if to allow unprivileged users to run GNS3.

Enable Docker support (Optional)

If you want to use Docker runtime engine in your Labs, install it on Debian 10 using our guide below.

Install Docker and Docker Compose on Debian 10 Buster

If any permissions errors are encountered, ensure your user belongs to the following groups:

for i in ubridge docker wireshark; do
 sudo usermod -aG $i $USER
done

Launch GNS3 on Ubuntu 18.04 / Ubuntu 16.04

On your Desktop Environment Launcher, search for GNS3 to start the initial configuration.

On the first page, select “Run the topologies on my computer”

On the second page, confirm the local server configuration location.

The third page should display a successful installation message

If you want to add your Virtual machines, Docker containers, vpcs or Network devices images, do it in the next step. This can also be done later after the installation.

Once configured, you should have a ready GNS3 installed on your Ubuntu 18.04 or Ubuntu 16.04 server.

To be able to capture GNS3 packets for analysis, you need Wireshark. You can install it using our guide in the link below.

How To Install Wireshark on Debian Desktop