OverTheBox - Aggregate and encrypt your multiple internet connections.
Clone or download
angt and gregdel Update to otb-18.11.20
Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
Latest commit cc60c7c Nov 20, 2018

README.md

OverTheBox

OverTheBox is an open source solution developed by OVH to aggregate and encrypt multiple internet connections and terminates it over OVH/Cloud infrastructure which make clients benefit security, reliability, net neutrality, as well as dedicated public IP.

The aggregation is based on MPTCP, which is ISP, WAN type, and latency independent "whether it was Fiber, VDSL, SHDSL, ADSL or even 4G", different scenarios can be configured to have either aggregation or failover based on MPTCP.

The solution takes advantage of the OpenWRT/LEDE system, which is user friendly and also adds the possibility of installing other packages like VPN, QoS, routing protocols, monitoring, etc. through web-interface or terminal.

More information is available here: https://www.ovhtelecom.fr/overthebox/

Install from pre-compiled images

Guide to install the image is available in french here. You can download all supported images here. This images are built by circle-ci on every new commit.

On Linux

Plug a USB drive, find the device you want to flash the image on using dmesg, lsblk,fdisk -l or the tool your most comfortable with.

This example will use /dev/sdX as the targeted block device, you have to change the following commands with your own device name

# Download the lastest master's image
wget http://downloads.overthebox.net/develop/targets/x86/64/latest.img.gz
# Extract and flash the image on your device
gunzip -c latest.img.gz | sudo dd of=/dev/sdX bs=512
sync

Once you boot on your USB key, the image will be flashed by default on mmcblk0, see the recovery section for more information.

Install from source

Dependencies

You need a classical build environment like build-essential on Debian and git. Some feeds might not available over git but only via subversion or mercurial.

On Debian you'll need to install the following:

sudo apt install build-essential git unzip ncurses-dev libz-dev libssl-dev
  python subversion gettext gawk wget curl rsync perl

Prepare and build

git clone https://github.com/ovh/overthebox.git
cd overthebox
./build.sh

The script build.sh accepts all make arguments (like -j). When finished, files are located in the directory source/bin.

Custom arch build

By default the build script will create the packages for the x86_64 architecture. You can specify a custom build target by adding a OTB_TARGET environment variable to the build and the corresponding config/$OTB_TARGET file.

To build the project for the raspberry pi 3:

OTB_TARGET="rpi3" ./build.sh

Create a recovery key

By default the image will try to flash itself on a device called mmcblk0, this is the default block device on our hardwares.

If you wish to target another block device you can add recovery=sda to the kernel command line to flash the image on /dev/sda. If the device doesn't exists, the recovery process is skipped. This file is responsible for flashing the image before the system starts.

Credits

Our solution is mainly based on: