Skip to content

Setup

Configure GNS3 Remote Server

This setup allows you to run a local GNS3 client and interact with a GNS3 server hosted on your LAB-VM. With the setup, we aim to achieve the following information flow and workflow:

img

The current version in use is GNS 2.2.54. To install the GNS3 client, find the client from GNS3's github repository:

GNS3 Repository

Be aware that using the NTNU VPN might cause issues with the port forwarding in certain OS's.

  • Install GNS3 according to instructions
    • Set the following option during installation: img
  • Configure the remote server in the appilcation: img Configure GNS3 to connect to remote-server as done in image below.

You do not need to edit the username or password of the GNS3-server.

SSH connection between VM and your computer

The console windows used in GNS3 are sent using the telnet protocol. Since telnet is an inherently insecure protocol, we need to forward the ports we use through SSH.

To establish a ssh connection between your computer and the VM a configuration file for ssh should be provided. Place the file or file contents to: ~/.ssh/config for POSIX (Mac or Linux) C:\Users\$username\.ssh\ for Windows. For Windows users, if you do not have the .ssh directory, you may need to activate the optional ssh feature.

If the file isn't provided, you can enter it manually with the following the following lines, where you put in your team number and your username (remove the brackets):

Host gns3
  HostName team<your team number>.ttm4240.iaas.iik.ntnu.no
  User <ntnu username>
  LocalForward 3080 localhost:3080
  LocalForward 5000 localhost:5000
  LocalForward 5001 localhost:5001
  LocalForward 5002 localhost:5002
  LocalForward 5003 localhost:5003
  LocalForward 5004 localhost:5004
  LocalForward 5005 localhost:5005
  LocalForward 5006 localhost:5006
  LocalForward 5007 localhost:5007
  LocalForward 5008 localhost:5008
  LocalForward 5009 localhost:5009
  LocalForward 5010 localhost:5010
  LocalForward 5011 localhost:5011
  LocalForward 5012 localhost:5012
  LocalForward 5013 localhost:5013
  LocalForward 5014 localhost:5014
  LocalForward 5015 localhost:5015
  LocalForward 5016 localhost:5016
  LocalForward 5017 localhost:5017
  LocalForward 5018 localhost:5018
  LocalForward 5019 localhost:5019
  LocalForward 5020 localhost:5020
  LocalForward 5021 localhost:5021
  LocalForward 5022 localhost:5022
  LocalForward 5023 localhost:5023
  LocalForward 5024 localhost:5024
  LocalForward 5025 localhost:5025
  LocalForward 5026 localhost:5026
  LocalForward 5027 localhost:5027
  LocalForward 5028 localhost:5028
  LocalForward 5029 localhost:5029
  LocalForward 5030 localhost:5030
  LocalForward 5031 localhost:5031
  LocalForward 5032 localhost:5032
  LocalForward 5033 localhost:5033
  LocalForward 5034 localhost:5034
  LocalForward 5035 localhost:5035
  LocalForward 5036 localhost:5036
  LocalForward 5037 localhost:5037
  LocalForward 5038 localhost:5038
  LocalForward 5039 localhost:5039
  LocalForward 5040 localhost:5040
  LocalForward 5041 localhost:5041
  LocalForward 5042 localhost:5042
  LocalForward 5043 localhost:5043
  LocalForward 5044 localhost:5044
  LocalForward 5045 localhost:5045
  LocalForward 5046 localhost:5046
  LocalForward 5047 localhost:5047
  LocalForward 5048 localhost:5048
  LocalForward 5049 localhost:5049
  LocalForward 5050 localhost:5050
  LocalForward 5051 localhost:5051
  LocalForward 5052 localhost:5052
  LocalForward 5053 localhost:5053
  LocalForward 5054 localhost:5054
  LocalForward 5055 localhost:5055
  LocalForward 5056 localhost:5056
  LocalForward 5057 localhost:5057
  LocalForward 5058 localhost:5058
  LocalForward 5059 localhost:5059
  LocalForward 5060 localhost:5060
  LocalForward 5061 localhost:5061
  LocalForward 5062 localhost:5062
  LocalForward 5063 localhost:5063
  LocalForward 5064 localhost:5064
  LocalForward 5065 localhost:5065
  LocalForward 5066 localhost:5066
  LocalForward 5067 localhost:5067
  LocalForward 5068 localhost:5068
  LocalForward 5069 localhost:5069
  LocalForward 5070 localhost:5070
  LocalForward 5071 localhost:5071
  LocalForward 5072 localhost:5072
  LocalForward 5073 localhost:5073
  LocalForward 5074 localhost:5074
  LocalForward 5075 localhost:5075
  LocalForward 5076 localhost:5076
  LocalForward 5077 localhost:5077
  LocalForward 5078 localhost:5078
  LocalForward 5079 localhost:5079
  LocalForward 5080 localhost:5080
  LocalForward 5081 localhost:5081
  LocalForward 5082 localhost:5082
  LocalForward 5083 localhost:5083
  LocalForward 5084 localhost:5084
  LocalForward 5085 localhost:5085
  LocalForward 5086 localhost:5086
  LocalForward 5087 localhost:5087
  LocalForward 5088 localhost:5088
  LocalForward 5089 localhost:5089
  LocalForward 5090 localhost:5090
  LocalForward 5091 localhost:5091
  LocalForward 5092 localhost:5092
  LocalForward 5093 localhost:5093
  LocalForward 5094 localhost:5094
  LocalForward 5095 localhost:5095
  LocalForward 5096 localhost:5096
  LocalForward 5097 localhost:5097
  LocalForward 5098 localhost:5098
  LocalForward 5099 localhost:5099
  LocalForward 5100 localhost:5100

After the file has been created, use the command ssh gns3 in your local terminal to login with your user and start the connection.

Note: For some computers, some of the forwarded ports will display as already in use and therefore not listenable. Which ports that are in use can be tuned at a later time by removing these from the ssh-config, but should in that case also be removed from the GNS3-server configuration.

As a final touch, you may need to update the dynamips package to make switches function properly in GNS3. This must be run once on the VM (in the SSH configuration):

sudo apt update && sudo apt install --upgrade dynamips

Off-Campus Access

In the case where you wish to work on the lab from off-campus, you will need to use the NTNU-VPN. You can find instructions on how to set up the VPN on:

NTNU VPN