this post was submitted on 12 Jul 2026
35 points (87.2% liked)

Selfhosted

60723 readers
315 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

Today I fumbled thru the install of Rayfish and Yggdrasil. Both are awesome, but Rayfish was so much easier to install and use.

Have you tried these yet?

Here's the Yggdrasil link:

https://yggdrasil-network.github.io/

Yggdrasil has Android, Windows, Linux, Apple installers.

Rayfish only works on desktop right now, but hopefully soon they will be able to get it on Android.

you are viewing a single comment's thread
view the rest of the comments
[–] innocentz3r0@programming.dev 5 points 4 days ago (2 children)

I suppose they don't work without having

  • a coordination server of sorts
  • having all the nodes on static IP

Like, if the IPs keep changing, and a device goes offline and then online, how does yggdrasil know how to reach that system?

[–] lemmyvore@feddit.nl 2 points 3 days ago (1 children)

In the Yggdrasil network any node can act as relay for other nodes. So you can get to unreachable nodes via reachable nodes, as long as there's a possible path through the network graph.

The community also maintains a few nodes with static public addresses, specifically so they can be used as entry points into the network.

Each node has two addresses, one used for communications inside the network and one used for peering. The inner address is IPv6 allocated randomly from the reserved 0200::/7 range and never changes (unless you wipe and re-configure the node). The peering address needs to be public and static, yes, but can be either IPv4 or IPv6 fwiw.

You only need to peer with one such public and static address to be able to reach other nodes, as long as there's a path to them among all the peers in the graph. If you're taking advantage of the larger Yggdrasil network that is taken care of by the public community nodes. If you want to set up your own separate network then you need to set up at least one node with a public static address. But you can also use a domain name and do DDNS for example.

[–] innocentz3r0@programming.dev 1 points 3 days ago

Thanks, this was quite detailed. You do need public relay nodes after all... which was what I was wondering.

[–] altphoto@lemmy.today 3 points 4 days ago (1 children)

My phone gets a new IP when I hop from wifi to cell but it's still able to communicate. Supposedly rayfish has this solved too although I cannot test that since the computer is on my network but maybe I could tether something to my cellphone and test that way.

If you're using ipv6 supposedly you don't need to forward ports. So that means that regardless of what IP your ISP gives you, your network should survive.

[–] lemmyvore@feddit.nl 1 points 3 days ago* (last edited 3 days ago)

If you're using ipv6 supposedly you don't need to forward ports.

You don't need to forward ports but you still need to maintain network rules for each port so you can get through the firewall. And those rules need to know IPs. And if your public IPv6 prefix changes you need to update the rules.

So, really, there's no advantage over forwarding, on the contrary, since forwarding uses private IPs which you can make static so they never change.

Some router software like OpenWRT attempts to work around this issue by using a special "minus netmask" shorthand syntax for the network rules, for example ::2/-64 means you want to reach [whatever the dynamic prefix is right now]::2. Which assumes you've set things up so that a certain machine always gets static suffix ::2, which means that machine does not do MAC anonymization and can use DHCPv6, which excludes all Android and iOS devices. So it can be used with Linux servers for example but with a lot of caveats.