What is GNS3 ?

Graphical Network Simulator-3 (shortened to GNS3) is a network software emulator first released in 2008. It allows the combination of virtual and real devices, used to simulate complex networks. It uses Dynamips emulation software to simulate Cisco IOS. Source - WikiPedia.

How to install GNS3

I will show you how to install GNS3, dynamips, vpcs and ubridge from official GNS3 source code on RHEL 8 / CentOS 8.

The only difference in the installation process between RHEL and CentOS is Code Ready Linux Builder repository, which is called PowerTools on CentOS.

Enable CodeReady (RHEL 8 Only)

[[email protected] ~]# subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms

Enable PowerTools (CentOS 8 Only)

[[email protected] ~]# yum install dnf-plugins-core
[[email protected] ~]# yum config-manager --set-enabled PowerTools

Install Required RPMs

[[email protected] ~]# yum install python3-devel elfutils-libelf-devel libpcap-devel python3-pyqt5-sip python3-qt5 xterm
[[email protected] ~]# yum groupinstall 'Development Tools'

Clone the needed sources for gns3-gui, gns3-server, vpcs, dynamips and ubridge

[[email protected] ~]# cd /usr/local/src/
[[email protected] src]# git clone
[[email protected] src]# git clone
[[email protected] src]# git clone
[[email protected] src]# git clone
[[email protected] src]# git clone

Install GNS3 Server

[[email protected] ~]# cd /usr/local/src/gns3-server/
[[email protected] gns3-server]# pip3 install -r requirements.txt
[[email protected] gns3-server]# python3 install

Install GNS3 Gui

[[email protected] ~]# cd /usr/local/src/gns3-gui/
[[email protected] gns3-gui]# pip3 install -r requirements.txt
[[email protected] gns3-gui]# python3 install
[[email protected] gns3-gui]# cp resources/linux/applications/gns3.desktop /usr/share/applications/
[[email protected] gns3-gui]# cp -R resources/linux/icons/hicolor/ /usr/share/icons/

Install VPCS

[[email protected] ~]# cd /usr/local/src/vpcs/src
[[email protected] src]# ./
[[email protected] src]# cp vpcs /usr/local/bin/vpcs

Install Dynamips

[[email protected] ~]# cd /usr/local/src/dynamips/
[[email protected] dynamips]# mkdir build 
[[email protected] dynamips]# cd build/
[[email protected] build]# cmake ..
[[email protected] build]# make
[[email protected] build]# make install

Install Ubridge

[[email protected] ~]# cd /usr/local/src/ubridge
[[email protected] ubridge]# make
[[email protected] ubridge]# make install

Now GNS3 will be listed in your applications. Optionally, libvirt and qemu-kvm can be installed and it will be possible to add virtual machines directly in GNS3 topology.

[[email protected] ~]# yum install libvirt qemu-kvm