INetSim: Internet Services Simulation Suite

Documentation

Installation

Installation instructions:

  1. Before installing INetSim, please make sure your system meets all necessary requirements.
  2. Download the latest version of INetSim.
  3. INetSim runs all services with privileges of the user specified in the configuration file (default: 'nobody'), so make sure this user exists on your system.
  4. INetSim runs all services with privileges of group 'inetsim', so you need to add a group with that name to your system. On a Linux system, this can be done by executing the command 'groupadd inetsim' as root.
  5. Unpack the downloaded tarball to a directory of your choice (e.g. /opt/inetsim).
  6. Change into the top-level directory of the unpacked tarball and run the script 'setup.sh' as root. This will set some required permissions for files and directories of INetSim.
Configuration

For a documentation of the configuration directives of INetSim, please refer to the manpage 'inetsim.conf' in subdirectory 'man/man5' and the comments in the sample configuration file 'conf/inetsim.conf' included with the INetSim distribution.

Usage

To start INetSim, change into the top-level directory of the unpacked tarball and run the startup script 'inetsim' as root.

For a documentation of the available command line options for the startup script, please refer to the manpage 'inetsim' included with the INetSim distribution in subdirectory 'man/man1'.

INetSim requires root privileges to bind sockets to ports below 1024. After binding the sockets, root privileges are dropped as described in section 'Installation'.
Currently, the INetSim startup script can only be run with root privileges, even if no ports below 1024 are configured to be used. This might change in future releases.

IMPORTANT NOTE for users of OpenBSD/FreeBSD:

The default maximum number of semaphore identifiers on OpenBSD/FreeBSD is 10. INetSim needs some more semaphore identifiers to run. So you have to raise the corresponding sysctl value (kern.seminfo.semmni on OpenBSD, kern.ipc.semmni on FreeBSD). A value of 20 should work. Otherwise INetSim will crash with an error message like "Could not create semaphore set: No space left on device" on startup.

Running INetSim as daemon

A Linux compatible init script for running INetSim as daemon is included in subdirectory 'contrib' of the distribution package. When using the INetSim Debian package, daemon mode can be activated by setting 'ENABLED=1' in '/etc/default/inetsim'.