Channel/Tunnel bonding with wireguard

Saeid Akbari saeidscorp at yahoo.com
Mon Jan 22 22:03:27 CET 2018


Hi folks,

I have been thinking about utilizing WireGuard on my VPS to act as a central 
hub for combining my multiple slower connections and having a faster one. I 
had a possible way of doing it in my mind, and finally today I did a little bit 
of googling found this article (also learned the real name for the technique: 
bonding):

http://vrayo.com/how-to-set-up-a-bonding-vpn-connection-in-linux/

Since this approach uses a user-space daemon to relay around data, it would 
incur some performance penalties compared to a kernel-mode driver like WG. So 
it's probably not a good idea to use it on top of WG.

The pure WG scheme I have in my mind goes something like this:
- having a single swg0 interface on VPS.
- having multiple interfaces on the client (cwg0, cwg1, ...), each configured 
with a single peer, that is the VPS swg0 interface.
- some iptables + ip rules fu to split and re-join the stream of IP packets.

For the third part, I can think of statistic netfilter match for splitting the 
packets. But there are other things around which I don't know much about; like 
the qdiscs... so I'm not confident if I'm headed in the right direction...

Is this a good idea? What do you suggest? Is there any better way to do it?

Thanks in Advance

Saeid,


More information about the WireGuard mailing list