Skip to content

Installation

Windows

Run the Ostinato installer ostinato-xxx-setup.exe and follow on-screen instructions.

Missing DLL error

NPCAP DLL error

If at Ostinato startup, you see DLL not found error(s) for wpcap.dll or packet.dll, you haven't installed npcap which is required for Ostinato to run on Windows. Please download it from npcap.com, install it and then restart Ostinato

MacOS

  1. Open the dmg
  2. Drag the drone icon to the Applications icon
  3. Drag the Ostinato icon to the Applications icon

Network privileges on MacOS

Ostinato requires network privileges to transmit packets.

If you already have Wireshark installed and are able to run Wireshark without sudo (or as root), Wireshark has already made the system changes required for network privilges - you can run Ostinato also as a normal user and nothing more is required.

If you don't have Wireshark installed, please install it.

Linux

Ostinato is distributed as multiple deb/rpm packages compressed into a single tgz - one for each distro. First untar the tgz for your distro to extract the deb/rpm packages -

$ tar zxvf /path/to/tgz
$ ls

Depending on whether you have deb/rpm packages, follow the appropriate instructions below -

Use apt install with the full path to the local package - prefix ./ if the .deb file is in current directory.

$ sudo apt install ./ostinato-agent*.deb
$ sudo apt install ./ostinato-controller*.deb

Use yum to install the package.

$ sudo yum --nogpgcheck localinstall ostinato-agent*.rpm
$ sudo yum --nogpgcheck localinstall ostinato-controller*.rpm

Network capability assignment

To send packets on Linux, you need additional capabilities. Follow steps from this FAQ to configure Ostinato to run without sudo/root privileges.

Virtual Machine (VM)

Use import/open in VirtualBox/VMware to open the .ova file to create the VM.

After the VM is created, please follow the below instructions specific to your hypervisor.

  • Verify Network Adaptor 1 is configured as NAT and remaining as Internal Network
  • Change the name of the internal network to be different for Adaptors 2 to 4 e.g. osteth1, osteth2, osteth3. These same names must be used for the VM whose NIC you want to connect to these interfaces
  • Adaptor 1 should be NAT and the rest should be Bridged
  • Change Adaptors 2 to 4 from Bridged to Custom and set a different unused VMnetXX for each of them (except Vmnet0, Vmnet8 and Vmnet11). These same names must be used for the VM whose NIC you want to connect to these interfaces

Note

Although the VM is configured with 4 NICs, eth0 is the management interface. Only eth1, eth2 and eth3 should be used as data interfaces to send traffic on and capture from.

Tip

When the Ostinato GUI starts, you MAY sometimes get a error message saying Failed to start the local drone agent. This is spurious and can be ignored as long as the 127.0.0.1 portGroup status icon is Green (connected) - this will be fixed shortly.

Docker Containers

There are two Ostinato container images -

docker-ostinato-agent-{ver}.tgz
docker-ostinato-{ver}.tgz

The first is an agent-only image - you will need to use an external Ostinato GUI to connect to the drone agent packaged in the container.

The second contains both the agent and the GUI controller.

How to install Ostinato docker container

Use the docker load command to load the tgz -

docker load -i docker-ostinato-[agent-]{tag}.tgz

Use docker images to verify ostinato/ostinato-[agent] is listed.

How to run/use the Ostinato docker container

To access the agent-only container, use docker run -p7878:7878 and from the Ostinato GUI add a new port group with your docker host DNS name or IP address.

To access the Ostinato GUI in the agent+GUI container, use docker run -p5900:5900 and then connect a VNC client to <host-ip>:5900 - this will bring up the Ostinato GUI

Note

Both images treat eth0 as the mgmt interface and therefore don't include it within Ostinato.

Tip

If additional veth ports are added to the container later, Ostinato may not list them. Please kill and restart the drone process inside the container so that it reads the port list again.

Python API

See Ostinato API Guide - Installation

Performance Bench

See Performance Bench - How to Install

Labbing

Please follow the instructions on the respective labbing platform page.

GNS3

EVE-NG

CML

Containerlab

Back to top