Rayfish, Iroh and Yggdrasil (rayfish.xyz)
from altphoto@lemmy.today to selfhosted@lemmy.world on 12 Jul 00:53
https://lemmy.today/post/56391614

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:

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.

#selfhosted

threaded - newest

paperd@lemmy.zip on 12 Jul 01:45 next collapse

But rayfish is vibe coded. I’d not trust it.

altphoto@lemmy.today on 12 Jul 02:22 next collapse

Hmm 🤔

uuj8za@piefed.social on 12 Jul 06:51 collapse

Evidence?

gooeyglob@lemmy.world on 12 Jul 07:38 collapse

Well aside from the obvious giveaways in the presentation format of the README.md, and .gitignore, the very first question of its FAQ is:

“You use LLMs? 🤯”

Yes. Heavily. Claude and GLM-5.2 wrote a lot of this repo.

uuj8za@piefed.social on 12 Jul 07:59 collapse

Oooh. I can’t believe I missed that. Thanks!

https://github.com/rayfish/rayfish?tab=readme-ov-file#faq

123@programming.dev on 12 Jul 08:15 collapse

Well, at least they tell you to not trust it for production in it’s current stage I guess.

altphoto@lemmy.today on 12 Jul 14:26 collapse

Agreed, it’s not for production. For me, as an engineer, LLMs are a couple of things. One is they are killing the planet by consuming energy, dumping the smog into our communities and consuming the water we need to survive. The other way to see it is…uhh give me a funny ass picture of a cat driving a taxi with a donkey and a giraffe riding in the back…make it a 5 minute video… probably uses way more resources than… write a program that gives me network freedom, here are the specs…

Once I get this initial bit and I study it, then I should be able to develop it like any other piece of software. It’s that initial kick that helps a lot. In my experience, if you keep asking the LLM for more, your program will just suck ass more and more until you’re left with nothing working. The other problem is it makes you lazy. Why should I debug if the LLM can do it?..debug this! But instead of a debug you get a full re-write and you don’t know what changed.

So I hope they are using the LLM in a structured way. Remember, no matter what the LLM does, if you’re not a programmer who would otherwise have understood the program enough to write it, you will still not understand it. Same for the cryptography.

But LLMs are basically a librarian who can parse thru many books and predict the next word or sentence. It’s locally correct. So imagine using Google maps street view to drive your car. First you have to get the big thing…where are you at? Now, with no windows just a gps signal telling you how far you are, you turn left or right based on your own knowledge of where you want to go. Finally, you crash on obstacles like other cars, pedestrians and buildings. Each time you crash you can get out to see where you are and start again. That’s LLMs in a nutshell. But if you finally get to where you wanted to go, you have a full program for anyone else to use. Lol

frongt@lemmy.zip on 12 Jul 02:57 next collapse

Never heard of it. Why should I use it instead of established systems?

altphoto@lemmy.today on 12 Jul 03:03 collapse

Because, specially rayfish, both are encrypted peer to peer and have their own DNS and are decentralized. So no company in the middle collecting everything you do in a data center and giving it to your enemies while charging you for it.

With Rayfish you don’t even need a dynamic DNS or FQN so my FQN cost and it’s never ending complications go away. The only problem is that they don’t have an android app yet for Rayfish. For now I’m using Yggdrasil.

frongt@lemmy.zip on 12 Jul 03:07 collapse

So no advantage over something known like Netbird and Wireguard, then

altphoto@lemmy.today on 12 Jul 03:13 collapse

Both Rayfish and Yggdrasil are serverless and can traverse a NAT. So you can’t block them unless you unplug.

moonpiedumplings@programming.dev on 12 Jul 16:01 collapse

No, they are trivial to block using techniques like deep package inspection.

In addition to that, they aren’t truly decentralized (no decentralized network really is), both rely on relay/bootstrap servers to start up the connection. So, if you block the public relay/bootstrap servers, you effectively block access to the network.

Tailscale, netbird also can traverse NAT.

Iroh (the actually pretty interesting software which the vibecoded rayfish is based on) and Yggdrassil do have their uses, but evading blocks isn’t one of them.

innocentz3r0@programming.dev on 12 Jul 04:38 next collapse

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?

altphoto@lemmy.today on 12 Jul 05:31 collapse

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.

ace@lemmy.ananace.dev on 12 Jul 07:59 next collapse

Been using Yggdrasil for quite a while at this point, both for encrypted service communication and also as unbreakable VPN links to various places where I don’t want to have to mess about with NAT traversal.

It’s been nice to be able to just drop it onto my router, add an ALFIS DNS entry, and have all my devices just work with Yggdrasil with no additional configuration.

possiblylinux127@lemmy.zip on 12 Jul 09:39 next collapse

I’m thinking about doing BGP+Wireguard

irmadlad@lemmy.world on 12 Jul 12:33 collapse

So…this is kind of like Tor, but different?

altphoto@lemmy.today on 12 Jul 13:30 collapse

No, this is not tor. This is networking. Imagine two computers where you can plug one to the other with an Ethernet cable that’s it. Except that you connect one at your house and I connect the other at my house. They think they are in the same network so I could browse through your files or use a local website you serve. The benefit being that I could be you and I just traveled to your country yesterday. So I plug in my computer and I can see all my files back home from your country. Neither country can spy into my system or see what I’m doing. All they can do is decide that it’s not worth having a national connection if I’m on the network. So they can unplug the entire Internet just to block me watching YouTube from Tampa while I’m in Italy.

irmadlad@lemmy.world on 12 Jul 14:06 collapse

Interesting. Never heard of it. I’ll have to do some reading.