Source repository for the Internet Visualizer tool.
This project is based on the work by JP van Riel and Barry Irwin of Rhodes University. Their original work can be found here: www.cs.ru.ac.za/research/g02v2468/inetvis.html
The task of modernising and updating InetVis was the focus of my MSc research which is now complete. The official copy of my thesis on the subject can be found at http://hdl.handle.net/10962/69223
InetVis was originally written in Qt 3 and compiled to 32-bit code. It has since been ported to Qt 5 and has been updated to compile a 64-bit binary.
The instructions below have all been tested on the current version of Ubuntu, 17.04 64-bit.
A compiled version of InetVis is available under the releases section of https://github.com/yestinj/inetvis.
In order to install and run InetVis do the following:
- Download the latest release archive from the releases page
- Extract the archive, i.e.
inetvis-2.1.1.tgz
- Change into the extracted directory
- Run
install_inetvis.sh
- This script will: install the software to
/opt/inetvis-<version>
- Create a symlink directory
/opt/inetvis
- Copy the relevant files to the new directory under
/opt
. - Place an icon file in
/usr/share/icons/hicolor/48x48/apps/
- Place a
desktop
file in/usr/share/applications
, allowing InetVis to be found in the menu on Ubuntu systems - Create a symlink at
/usr/local/bin/inetvis
pointing to the main binary. - Set the
cap_net_raw
, andcap_net_admin=eip
capabilities on the binary allowing for monitoring localhost without running as root. $sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' This needs to generally not be /home which on Debian/ubuntu systems is mounted nosuid
- This script will: install the software to
- If the script completes successfully inetvis should now be in your path and the menu system of your distribution.
You should now be able to run the inetvis
binary from the command line. Running from the command line allows you to view console messages produced while the application is running.
A convenience script is included in the release archive, namely uninstall_inetvis.sh
, which can be used to completely remove InetVis from your system.
In order to build InetVis yourself take note of the following guidelines:
- Update your system:
sudo apt-get update
,sudo apt-get upgrade
, andsudo apt-get dist-upgrade
- Install the following dependencies:
sudo apt-get install libpcap-dev qt5-default
It has been noted that the following dependencies were also required on Linux Mint based systems:
sudo apt-get install libqglviewer-dev libqglviewer2
Once the dependencies are installed, clone this repository:
- Clone the GitHub repo into the
inetvis
directory:- git clone [email protected]:yestinj/inetvis.git
- Change into the
inetvis/src
directory
Build the inetvis
binary:
qmake
make
This will result in a new inetvis
binary being generated within the src directory.
You may now run inetvis
simply by running the generated binary. You will need to either run using sudo, or set packet capture capabilities (see instructions above) on the file in the event that you would like to monitor your local network interfaces.
Have fun! :-)
Development is currently done using Qt Creator.
Qt Creator allows for simple editing of source code, as well as graphical form editing, and can be
installed in Debian flavours of Linux by installing the qtcreator
package.
This software uses Semantic Versioning 2.0.0 (http://semver.org/) as of release v2.0.0.