Hi there rodents,
I might need your help here to find something which seems to be as rare as a diamond.

Let me explain:
today me and my friends decided we finally needed to setup a vpn to play lan games, expose services like synchronized film streaming etcetera.
As per my advice, since low latency and ease of use are a must, we settled on wireguard.

After the vpn was on, we realized some games could not be played due to them strictly using broadcast to do participants discovery/connection. A shame, but we’ll just play something else.

Then someone proposed we search a solution to ease the pain we have in sharing files.
Since half my friends have a slow internet connection, uploading to a server and then downloading back would require too much time, so we opted for direct transfer programs.

alternativeto.net proposed programs as lanXshare, dukto R6, nitroshare, all of which unfortunately make use of broadcast to find peers on the network.
As already discovered, broadcast doesn’t work in the vpn, so we have no idea what software we could use that doesn’t connect to the cloud, nor forces us to have a share service on the server which hosts the wireguard central node.

I would like to avoid using ssh or ftp on everyone pc as well, since the majority of them uses windows and only have basic computer skills.

Does anyone have a program or even a tip which could help?

Thanks in advance!

    • clockwise_bitOP
      link
      fedilink
      arrow-up
      3
      ·
      4 years ago

      I think I just found the solution.
      While completely new and maybe not audited, I just tried web wormhole and it seems to fit my needs.
      It is written in go (I decisely prefer go over nodejs) and it’s foss. repo.

      I tried passing large files between devices in different networks (using the “demo” site), they were not blocked (so there’s not bandwith or size limit, the server appears to truly act only as a signaler) and the hashes matched.

      I’m going to put it on my server (which is the central vpn node) and see if it works as expected, then I’ll post my results. I really hope it works!

    • clockwise_bitOP
      link
      fedilink
      arrow-up
      1
      ·
      4 years ago

      Well, I don’t think syncthing is very well suited for a sporadic, temporary connection.
      I also tried snapdrop but it turns out that it works by matching the public ip of the two parts (seen in a github issue).

    • clockwise_bitOP
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      4 years ago

      After a lot of trial and error, I gave up trying to setup webwormhole.

      These are the problems I encountered:

      • total lack of documentation which had me jump from file to file too many times
      • docker build instructions and makefile instructions are a little bit different (I do not use the provided dockerfiles nor images, I always build them from the ground up)
      • the runtime options are only specified as a comment in each source file
      • (I think this is caused by my alpine base image with go installed from apk) the wasm_exec.js file which both dockerfile and makefile try to fetch could not be found in the system. I fixed this one by manually downloading the file from the golang repository and making docker load that. file
      • (might have misinterpreted this one) the service requires access to a let’s encrypt cert folder or it won’t even work.
      • even after specifying that the https address/port was 0.0.0.0:8081, the redirect I received upon connecting to the http port was to the 443 port. Anyway the program did bind to the correct ports.

      Unfortunately I can’t even properly lend a hand because I don’t know go at all, I can only read the source code for the most part and figure things out.

      Back to the beginning, yay…