Ubuntu 14.04 LTS is due out on April 17th, but you can download the latest beta (the release candidate) at
http://releases.ubuntu.com/trusty/ -- it should be pretty stable by this point.
Then, once installed and updated, install the following packages to prep for building/installing the latest Dynamips, GNS3 1.0a1 server, and 1.0a1 GUI --
Code:
sudo apt-get install build-essential libelf-dev uuid-dev libpcap-dev python3-dev python3-pyqt4
(the
python3-pyqt4 package will also pull in
python3-sip package as a dep, which is also needed for the GUI.)
Then, download the latest Dynamips code from github -
https://github.com/GNS3/dynamips/archive/master.zipUnzip into the location of your choice (I made a "GNS3-1.0-alpha1" dir for these builds)
Then cd into the dynamips-master dir, and do
Code:
make && sudo make install
This should install dynamips into /usr/bin
Test it out to make sure it works:
Code:
$ dynamips -H 7200
Cisco Router Simulation Platform (version 0.2.13-dev-amd64/Linux stable)
Copyright (c) 2005-2011 Christophe Fillot.
Build date: Apr 2 2014 21:03:37
Local UUID: ceab9ce9-cf6e-48b1-9902-d49bd83e9eb1
Hypervisor TCP control server started (port 7200).
^CHypervisor: closing control sockets.
Hypervisor: closing remote client connections.
Shutdown in progress...
Shutdown completed.
Then we'll need to make sure that we have pip and setuptools installed for Python 3.x -- easiest way to do this is the following:
Code:
wget -O get-pip.py https://raw.github.com/pypa/pip/master/contrib/get-pip.py
sudo python3 get-pip.py
Now let's use pip to get some pre-req python modules for GNS3...
Code:
sudo pip3 install pyzmq
sudo pip3 install tornado
sudo pip3 install netifaces-py3
These will all download and compile code, and then install the resulting modules. The pyzmq one in particular will compile a lot of things, and warn early on that it can't find an existing libzmq installation -- that's OK, it will build it's own one during the compilation. Just let it run after the warning.
OK, now onto the new GNS3 server... Grab the server code from Github,
https://github.com/GNS3/gns3-server/archive/master.zipUnzip into the location of your choice, and then cd into the resulting gns3-server-master directory.
Then follow the instructions on the Github page to install it:
Code:
sudo python3 setup.py install
Now let's make sure that runs...
Code:
$ gns3server
GNS3 server version 1.0a2.dev1
Copyright (c) 2007-2014 GNS3 Technologies Inc.
Running with Python 3.4.0 and has PID 14044
[W 140403 00:11:40 config:82] no configuration file could be found or read
[I 140403 00:11:40 base:122] dynamips module running with PID 14046
[I 140403 00:11:40 base:75] ZeroMQ client (dynamips) connecting to 127.0.0.1:50052
[I 140403 00:11:40 server:194] ZeroMQ server listening to 127.0.0.1:50052
Starting server on 0.0.0.0:8000
[I 140403 00:11:40 base:122] iou module running with PID 14047
[I 140403 00:11:40 base:75] ZeroMQ client (iou) connecting to 127.0.0.1:50052
[C 140403 00:11:40 server:142] socket in use for port 8000
^CError in atexit._run_exitfuncs:
Traceback (most recent call last):
File "/usr/lib/python3.4/multiprocessing/popen_fork.py", line 30, in poll
[W 140403 00:11:51 base:111] Module dynamips got signal 2, exiting...
pid, sts = os.waitpid(self.pid, flag)
KeyboardInterrupt
[W 140403 00:11:51 base:111] Module iou got signal 2, exiting...
^C
(Yes, it hangs at the last "exiting...", I use another Ctrl-C to terminate the process, which doesn't seem to hurt anything.)
Lastly, download and install the GUI --
Grab the GUI code from Github,
https://github.com/GNS3/gns3-gui/archive/master.zipUnzip into the location of your choice, and then cd into the resulting gns3-gui-master directory.
Then, follow the instructions on the Github page to install it:
Code:
sudo python3 setup.py install
Lastly, start up the server in one terminal window:
Code:
$ gns3server
GNS3 server version 1.0a2.dev1
Copyright (c) 2007-2014 GNS3 Technologies Inc.
Running with Python 3.4.0 and has PID 14071
[W 140403 00:21:32 config:82] no configuration file could be found or read
[I 140403 00:21:32 base:122] dynamips module running with PID 14073
[I 140403 00:21:32 base:75] ZeroMQ client (dynamips) connecting to 127.0.0.1:49055
[I 140403 00:21:32 server:194] ZeroMQ server listening to 127.0.0.1:49055
Starting server on 0.0.0.0:8000
[I 140403 00:21:32 base:122] iou module running with PID 14074
[C 140403 00:21:32 server:142] socket in use for port 8000
[I 140403 00:21:32 base:75] ZeroMQ client (iou) connecting to 127.0.0.1:49055
And then in another terminal window, fire up the GNS3 GUI --
Code:
$ gns3
GNS3 GUI version 1.0-alpha1
Copyright (c) 2007-2014 GNS3 Technologies Inc.
INFO:gns3.modules.dynamips:Dynamips module reset
INFO:gns3.modules.iou:IOU module reset
INFO:gns3.topology:topology has been reset
INFO:gns3.main_window:creating temporary topology file: /tmp/gns3-2m0823n0.net
INFO:gns3.main_window:creating temporary project files directory: /tmp/gns3-2m0823n0-files
INFO:gns3.modules.dynamips:local working directory for Dynamips module: /tmp/gns3-2m0823n0-files
INFO:gns3.servers:new local server connection ws://127.0.0.1:8000 registered
INFO:gns3.modules.iou:local working directory for IOU module: /tmp/gns3-2m0823n0-files
Now, enjoy exploring new GNS3! :)