this post was submitted on 24 Jun 2024
102 points (94.0% liked)

Open Source

38918 readers
534 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
 

"Create P2P tunnels instantly that bypass any network, firewall, NAT restrictions and expose your local network to the internet securely, no Dynamic DNS required."

all 39 comments
sorted by: hot top controversial new old
[–] [email protected] 94 points 1 year ago (1 children)

Join our Discord Support Server

Right into the trash.

[–] [email protected] 30 points 1 year ago* (last edited 1 year ago) (3 children)

Static IP address and Dynamic DNS can expose your network to attackers on the internet. With Holesail, you expose only the port you choose.

Er, wut? If you're exposing a port, then your public IP is being used, as a port is a subset of an IP interface. So even Holesail uses the public IP in some way...thats how the internet works. Unless they're only making outbound connections, which isn't a new idea at all - Hamachi was doing it 20 years ago.

This sounds like FUD to me - of course your public IP is used, whether static or dynamic. How do they supposedly mitigate this risk?

There's nothing on the home page saying how it works, or how it's different than current solutions.

I'm intrigued to see a new tool in this space, but this one is starting off leaving a bad taste. Even Tailscale admits they use Wireguard, and even have a comparison between Wireguard and Tailscale that's pretty honest (though they focus on what Tailscale adds).

Being open and transparent is a minimum today - anything less and it's not worth the time for a second look.

[–] [email protected] 4 points 1 year ago

I know ngrok is something different, but do you know if it uses a technology similar to Hamachi too? I'm asking because I discovered that ngrok works even without a public IP (when you use a mobile connection for example).

[–] [email protected] 1 points 1 year ago

Because you’re only ‘exposing’ the port on the peer to peer network.

You “publish” a port to holesail, then clients have to create a local proxy via holesail before they can access it.

I agree, It’s a dumb pointless claim. But I don’t think it’s misleading.

It looks like holesail is just tailscale, but on a much smaller scale. It’s not networks, it’s just ports.

[–] [email protected] 13 points 1 year ago (2 children)

I don't understand, it says it's P2P, then it also says expose your local network to the internet securely. How can a P2P service expose anything to the internet without a gateway server somewhere?

Static IP address and Dynamic DNS can expose your network to attackers on the internet. With Holesail, you expose only the port you choose.

That's also how NAT works, you only expose the ports you choose.

[–] [email protected] 2 points 1 year ago

This looks like one of those wireguard based solution like tailscale or netbird though I'm not sure they are using it here. They all use a public relay used for NAT penetration as well as client discovery and in some instance, when NAT pen fails, traffic relay. From the usage, this seems to be the case here as well:

Share the local Minecraft server:

$ holesail --live 25565 --connector "holesailMCServer420"

On other computer(s):

$ holesail "holesailMCServer420"

So this would register a "holesailMCServer420" on their relay server. The clients could then join this network just by knowing its name and the relay will help then reach the host of the Minecraft server. I'm just extrapolating from the above commands though. They could be using DHT for client discovery. But I expect they'd need some form of relay for NAT pen at the very least.

As for exposing your local network securely, wireguard based solution allow you to change the routing table of the peers as well as the DNS server used to be able to assign domain name to IPs only reachable from within another local network. In this instance, it works very much like a VPN except that the connection to the VPN gateway is done through a P2P protocol rather than trough a service directly exposed to the internet.

Though in the instance of holesail, I have heavy doubts about "securely" as no authentication seems required to join a network: you just need to know its name. And there is no indication that choosing a fully random name is enough.

[–] [email protected] 2 points 1 year ago

Looks like tail scale for ports.

[–] [email protected] 8 points 1 year ago (1 children)

Trying to figure this out

Hyperswam dht is used as the hole punch intermediary... Which is running on the hole punch swarm...https://github.com/hyperswarm

I can't find a good overview document of how the entire architecture works, there's no Wikipedia page on this system.

At its core, if it's open source, I want to know what I need to run this independently on my own networks without touching any of their stuff.

[–] [email protected] 7 points 1 year ago* (last edited 1 year ago)

There's more information about the components of this system here:

https://docs.pears.com

There really isn't much to this Holesail project - it's a little convenience wrapper around Hyper DHT and that's a part of this Pear project it seems. That site has a list of the various components and links to each one's GitHub.

Pear looks like an interesting project but I haven't looked through the details of how it works.

[–] [email protected] 4 points 1 year ago

Setting up a custom reverse proxy is time-consuming and requires advanced knowledge of nginx/apache2.

ezpz with Caddy. tailscale + caddy can get this done pretty easily.

Also, not hating on nodejs, but this project screams like it shouldn't be in nodejs. Maybe if there was a webui included that would make sense. Otherwise I'd expect C or Go.

[–] [email protected] 4 points 1 year ago (2 children)
[–] [email protected] 1 points 1 year ago

That brings back memories... trying to play co-op games back in the day wasn't so easy as it is now...

[–] Andromxda 2 points 1 year ago

Is this similar to NetBird and Tailscale?