Hello everyone!
After two years of active development, I am proud to announce that BondingShouldBeFree, an open-source network aggregation and redundancy solution is ready for its first stable release.
The BondingShouldBeFree bonding solution is a set of programmes that utilises Multipath TCP (MPTCP), providing advanced network aggregation and redundancy capabilities.
This project leverages an upstream Linux kernel and is currently focused on supporting conventional Linux distributions and all OpenWrt-supported devices.
The main goal of BSBF bonding is to combine multiple internet connections into a single connection to improve both bandwidth throughput and network reliability. By aggregating multiple internet breakouts, users can achieve better performance and maintain connectivity as long as there is one working connection.
How to Use
This is a plug-and-play solution. All network interfaces on your router (Ethernet ports, SFP, etc.) are automatically converted to WAN with a DHCP client. Only one interface remains LAN to access the bonded network. The interface with the biggest number at the end, such as lan5, is made LAN. If there are no interfaces with a number at the end, the first found LAN network interface is used instead.
There is a web interface to monitor and manage internet connections. Management options are enabling or disabling bonding, setting rate limits on each internet connection (connection prioritising), making internet connections backup, and running speed tests. After install, you can access it at the link below. If your device uses a different LAN IP, replace 192.168.1.1 with your device's address.
http://192.168.1.1/bsbf-client-web/
For internet connections using Wi-Fi, PPPoE, and alike, you can configure a network entry for them as usual but put a metric between 1 and 8 that is not in use, and it will be included in the bond.
Install the bsbf-autoconf-dhcp and bsbf-autoconf-cellular packages to support auto-configuration of cellular modems, USB adapters, and Android and iOS tethering. MBIM or QMI modems will be added with the "internet" APN. Check the full package list here.
Installation
This solution is available on SNAPSHOT from 18/05/2026 and onwards, and OpenWrt 25.12.5 and later stable releases.
You need credentials from a server with the BSBF solution installed.
There are two methods to install the solution to an OpenWrt-supported device.
Running a shell command on a device running OpenWrt
Replace the server IPv4 address, server port, and UUID with yours below. Then run the command below. This command can be re-run to change the server and/or upgrade the solution.
apk add curl && curl -fsSL owrt.bondingshouldbefree.org | sh -s -- --server-ipv4 25.0.0.1 --server-port 16384 --uuid 60d210ef-7271-4dc9-9b93-01563608bf90
If the device runs out of storage at install, you can try to build an image instead by following the steps below.
Flashing an image
Head to the BondingShouldBeFree firmware selector. Put in your OpenWrt-supported device model. Put in your server IPv4 address, server port, and UUID, or request credentials, and press Request Build. Wait a minute or so for image generation to complete and then download the generated image for your device.
Details
Project page and documentation.
For usage, projects, discussions and hardware advice, feel free to join the Discord server.
Many thanks to Daniel (@dangowrt) for enabling MPTCP on the kernel by default for most OpenWrt devices, adding support and maintaining the mptcpize and ell packages, and bearing with me on many of my pull requests.
Dimi from Sovereign Hybrid Compute is kindly offering the US server free of charge. Check out his services.
Greetings to OpenMPTCPRouter.
I provide services to ISPs and other interested parties to implement the solution to their infrastructure. Contact me here.
Chester Arinc
25 May 2026 Update: The BSBF domain has changed to the one I own: bondingshouldbefree.org.
8 July 2026 Update: The free BSBF server credentials trial has concluded.

