Development discussion of WireGuard
 help / color / mirror / Atom feed
From: "Justin Kilpatrick" <justin@althea.net>
To: wireguard@lists.zx2c4.com
Subject: Re: Multihoming?
Date: Sat, 04 Apr 2020 20:47:55 -0400	[thread overview]
Message-ID: <49088d54-1381-45a6-a767-8596e6e07723@www.fastmail.com> (raw)
In-Reply-To: <445BCA5B-03B7-4127-82E8-029188083D45@gmail.com>

Using multiple connections at once is fraught with problems in the first place (see the complexities of teaming and bonding nics) but you can do a simple failover system using Babeld + Wireguard

Althea uses this for failover. In earlier versions of Wireguard it was quite bad (60 second switch times) but more recently handshake re-negotiation is triggered on the fly.

The whole process for Babel to detect the failure, reroute to some other Babeld node advertising the same IP and then for that Wireguard server and the client to renegotiate and get traffic flowing takes only a few seconds (about 5 in my experience). 

-- 
  Justin Kilpatrick
  justin@althea.net

On Tue, Mar 31, 2020, at 3:22 AM, Alex Besogonov wrote:
> Hi, list!
> 
> I’ve read the source code Wireguard implementations and it appears that 
> true multihoming seems to be impossible with the current protocol. By 
> true multihoming I mean possibility of using multiple connections at 
> the same time, preferably with configurable rates for them on both 
> sides.
> 
> A typical use-case would be a small office using two independent ISPs 
> to connect to a Wireguard server, so that failure of one of them would 
> not cause service interruption. Or a mobile user with an LTE and WiFi 
> connections used simultaneously.
> 
> Any ideas on how this could be implemented?

  reply	other threads:[~2020-04-05  0:48 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-31  7:22 Multihoming? Alex Besogonov
2020-04-05  0:47 ` Justin Kilpatrick [this message]
2020-04-05  7:38 ` Multihoming? Jason A. Donenfeld

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49088d54-1381-45a6-a767-8596e6e07723@www.fastmail.com \
    --to=justin@althea.net \
    --cc=wireguard@lists.zx2c4.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).