porech / engarde

A go network utility to create a reliable IP tunnel over multiple connections
GNU General Public License v2.0
280 stars 41 forks source link

Mulitple engarde clients to a single engarde server #80

Open chirayu-patel opened 1 year ago

chirayu-patel commented 1 year ago

First of all, amazing job on creating this functionality. Thankyou so much !!

In the docs you have mentioned that is Mulitple engarde clients will need to connect to multiple engarde server instances as of now. Combining this is a WIP.

Any specific timeframe for this :)

M3dinar commented 1 year ago

Hello,

We managed to put an engarde server with 3 clients. There is no specific thing to do in order to add another client. The 2 clients are in different location from each one of them and from the server. The 2 clients are sending audio stream to a server through engarde. The link are monitored and we don't have any issue for the moment. Engarde is working.

So it's working even if the documentation says that it should 1-to-1

ale-rinaldi commented 1 year ago

Hi there,

it probably works but it's quite inefficient: if you list Wireguard clients on the server, you'll probably see that there are two different clients with the same endpoint address and port (that is engarde-server), so Wireguard will send packets for both clients to the same engarde-server instance, and engarde-server will then forward all the packets to all connected clients. It means that both the clients will receive all the packets, and Wireguard magic will discard the ones that are not for him. So yeah, it works but it's kind of a miracle :)

Since you're streaming from the client to the server and you'll have low traffic coming from the server (only the acks, mainly) it should not be a big deal, as long as it works it's fine 👍