Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
X
Document Owner: Gian-Luca Casella (gcasella)
Email: gcasella@casellanetworks.ca
Website: http://www.casellanetworks.ca (Under Construction)
Version: 1.0
This document in full will provide detailed instructions on how to have your GNS3 installation
accessible anywhere and everywhere without burdening your local machine with the resources
required to run multiple Cisco IOU devices. The main purpose of this document is to allow an end-user
running the GNS3 client on their Windows 7/8.X machine, and connect to their remote GNS3 Server
installation. This document does not go through the procedure of installing and configuring ESXi 5.5 or
OwnCloud services.
Note: Using DropBox for this solution should work the same way. Also at the end of this document will
include items I still have yet to accomplish.
This document is broken up into 4 sections;
Section 1: Install and set up GNS3 Server on CentOS 7
Section 2: Install and setup GNS3 Client on Windows 8
Section 3: Test your new configuration
Section 4: Additional Information and Issues
Pre-requisites
Before beginning with the installation of GNS3 1.0, you will need necessary packages to be installed
on the system. This section will go over what is needed. Note that all these commands will need to be
used as root unless stated.
Development tools will need to be installed (this can be done during the initial installation of CentOS
7.x, or you can use the following command as root to install the necessary packages;
yum groupinstall Development Tools
Next, youll need to install some additional packages in order to begin the process of building your
GNS3 environment on CentOS, also its recommended to perform a system update, issue the following
two commands.
yum update y
yum install telnet openssl-devel cmake elfutils-devel uuid-devel libuuid-devel libpcap-devel
iniparser iniparser-devel wireshark wireshark-devel wireshark-gnome pyqt4-devel
If running 64-bit centos you need to install 32-bit openssl libraries use;
yum install openssl-devel.i686 openssl-libs.i686 then run the command ln -s
/usr/lib/libcrypto.so.1.0.1e /usr/lib/i686/libcrypto.so.4
Next its recommended to disable SELinux to do so edit the /etc/sysconfig/selinux file and replace
enforced with disabled
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#
enforcing - SELinux security policy is enforced.
#
permissive - SELinux prints warnings instead of enforcing.
#
disabled - No SELinux policy is loaded.
#SELINUX=enforced
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#
targeted - Targeted processes are protected,
#
minimum - Modification of targeted policy. Only selected processes are protected.
#
mls - Multi Level Security protection.
SELINUXTYPE=targeted
Once all the above tasks are completed it is again recommended to reboot your system to ensure
everything takes effect before moving forward.
Python3 Installation
Youll need Python3 to proceed with the following sections, you can install Python3 by using the
commands note this will install setuptools automatically for you;
cd /tmp && wget https://www.python.org/ftp/python/3.4.2/Python-3.4.2.tgz
tar zxvf Python-3.4.2.tgz
cd Python-3.4.2
./configure --enable-shared && make && make install
To ensure your Python3 installation works correctly make sure you edit the /etc/ld.so.conf file and add
"/usr/local/lib" (without quotes) on its own line, save the file and run the ldconfig command.
This completes the installation of the GNS3 server on CentOS 7.X, as the non-root user you can run
the server by using the /usr/local/bin/gns3server command, or add this GNS3Server.desktop file to
your ~/Desktop directory and set the appropriate permissions;
[user@gns3-iouvm ~]$ vi ~/Desktop/GNS3Server.desktop
[Desktop Entry]
Name=GNS3 Server
Exec=/usr/local/bin/gns3server
Path=/usr/local/bin
Terminal=true
Type=Application
Categories=X-Red-Hat-Extra;Network;GTK;X-Fedora;
Save and exit the file and set the appropriate permissions
[user@gns3-iouvm ~]$ chmod 777 ~/Desktop/GNS3Server.desktop
Important Note: By default the installation and configuration of the GNS3Server will automatically
create a directory called ~/GNS3/projects in your home directory. In order to use this cloud based
solution, you will need to modify line number 96 the /usr/local/lib/python3.4/sitepackages/gns3_server-1.2.3-py3.4.egg/gns3server/server.py file with the appropriate directory that
synchronizes with your OwnCloud / DropBox account. For example, the screenshot below shows I
have configured my GNS3 Server to make its active directory ~/ownCloud/GNS3/projects
Next we will need to enable some rules on the firewall in CentOS 7.X. Run the following commands in
order to open the ports required by the GNS3 Server to allow for remote connections;
firewall-cmd --permanent --zone=public --add-port=8000/tcp
firewall-cmd --permanent --zone=public --add-port=3501-5000/tcp
firewall-cmd --reload
One completed, you can go ahead and start your GNS3 Server and move onto the next section to set
up your GNS3 Client on Windows 7/8.X.
Next configure the GNS3 Server if you dont want the server to start on your Windows 7/8.X remove
the data entered in the Path: field and uncheck the Automatically start the server on startup;
Move to the Remote Servers tab to enter the settings of your remote GNS3 server, as you can see I
have my GNS3 Server set up at 192.168.1.11 on port 8000;
Once completed press Apply but dont close this window yet, the next steps will show how to set up
IOU. To do so click on the IOS on UNIX and browse for your iourc.txt file which will be pushed to the
GNS3 Server and then move onto the Server settings tab;
Make sure the Always use the local server (Linux only) is unchecked;
Once complete, click Apply and move to the IOU devices section of the preferences, once you
arrive to that screen, click on New to add a new IOU device;
10
Click Next and enter the path of your IOU .bin file that is located on your remote server for example
and then click Finish;
Now youre done with the configuration; you can go ahead and press Apply and OK to close off the
preferences of GNS3. It is best to restart the client fully before testing.
The next section will cover the testing of this new configuration.
11
These screenshots shows the first screenshot I added 3 IOU devices, 2 routers and 1 switch.
Screenshot two is a snippet from my GNS3 Server running on CentOS 7.X.
Once completed you can shut down your devices and save your project once you save your project
you will see all of your files have synchronized.
Windows 7/8.X
12
The next section will go over some tips and tricks that Ive come across while trying to complete this
task.
13
Ive stumbled across a few issues while trying to complete this little project. They are listed below in
no particular order;
1) Remote VirtualBox manager I wanted to set up Virtual Box Virtual Machines on my CentOS
7.X GNS3 Server and set up my Windows 7/8.X GNS3 Client to use those virtual machines,
when doing so I got the exception log below;
2) Using Wireshark for packet captures, it seems because the project directory is showing in a
Linux format and pointing to a completely different directory I get the following error;
It would be nice to change the working directory that your Wireshark looks in for all *.pcap
files.
14
I have yet to run into any other issues. If there is any other information that others would like to know
or additional information that I could add to this document please feel free to contact me at
gcasella@casellanetworks.ca.
One thing I love about this is that weather Im at work, at a friends house, at home, or at a coffee
shop, as long as I have the GNS3 client installed configured with my ownCloud Client and/or DropBox
client, I will have all my topologies wherever I am and use any computer I
wish.
15