A Quick Look at Cloonix, the Network Simulator
Cloonix is a Linux router and host simulation platform. It fully encapsulates applications, hosts and the network. Simulators like Cloonix offer students and researchers scope for research into various Internet technologies like the Domain Name System (DN
Cloonix is a network simulator based on KVM or UML. It is basically a Linux router and host simulation platform. You can simulate a network with multiple reconfigurable VMs in a single PC. The VMs may be different Linux distributions. You can also monitor the network’s activities through Wireshark. Cloonix can be installed on Arch, CentOS, Debian, Fedora, OpenSUSE and their derivative distros.
The main features of Cloonix are:
GUI based NS tool
KVM based VM
VMs and clients are Linux based
Spice server is front-end for VMs
Network activity monitoring by Wireshark
The system requirements are:
32/64-bit Linux OS (tested on Ubuntu 16.04 64-bit) Wireshark
Cloonix package: http://cloonix.fr/source_stored/ cloonix-37-01.tar.gz
VM images: http://cloonix.fr/bulk_stored/
To set it up, download the Cloonix package and extract it. I am assuming that Cloonix is extracted in the $HOME directory.
The directory structure of Cloonix is as follows: cloonix
│ ├── client
│ ├── cloonix_cli │ ├── cloonix_config │ ├── cloonix_gui │ ├── cloonix_net │ ├── cloonix_ocp │ ├── cloonix_osh │ ├── cloonix_scp │ ├── cloonix_ssh │ ├── cloonix_zor │ ├── common
│ ├── id_rsa
│ ├── id_rsa.pub │ ├── LICENCE
│ └── server
├── install_cloonix ├── install_depends ├── pack
5 directories, 19 files
To install Cloonix, run the following commands, which will install all the packages required, except Wireshark.
$sudo ./install_depends build
The following command will install and configure Cloonix in your system:
$sudo ./doinstall The command given below will install Wireshark: $sudo apt-get install wireshark
You have to download VMs in $HOME/cloonix_data/ bulk, as shown below:
│ ├── batman.qcow2 │ ├── bind9.qcow2 │ ├── centos-7.qcow2 │ ├── coreos.qcow2 │ ├── ethereum.qcow2 │ ├── jessie.qcow2 │ ├── mpls.qcow2 │ ├── stretch.qcow2 │ └── zesty.qcow2 Shown below are the demo scripts available:
├── eap_802_1x ├── ethereum ├── fwmark2mpls ├── mpls
├── openvswitch ├── ospf
├── strongswan └── unix2inet
To run any demo for ping, for instance, just go to the ping directory and run the following code:
This will create all the required VM(s) and network components. You can also monitor traffic by using Wireshark.
Cloonix is a good tool to run network simulation. All the VMs are basically Linux VMs, which you can easily reconfigure.
Figure 1: Ping simulation demo
Figure 2: Dynamic DNS demo