Comment by ๐ norayr
Re: "What is the purpose of Yggdrasil?"
so it is
L1 -> S0 -> L0
oh but your friends server is not accessible, he has power outage. then connection will be
L1 -> S2 -> L0
or maybe
L1 -> S1 -> S2 -> L0
or maybe
L1 -> S2 -> S1 -> L0
or maybe L1 -> S1 -> L0
we don't know.
but we know that if there's a way to route, yggdrasil will route and will choose the best way possible, whatever that means.
2025-11-30 ยท 5 months ago
6 Later Comments โ
๐ท baran [mod] ยท Nov 30 at 04:08:
"local network" overlay over internet. without anonimity, because it is for stability and speed. for anonimity you need add firewall and other...
๐ norayr [mod] ยท Nov 30 at 11:15:
i think well, depends on how to define anonymity, if it means an first sight it is not obvious who you are irl, then yes, you are represented by your ip. and then it is knn amout you as much as you want to share.
however usually we define anonymity as can our ip and isp and endpoint be traced? yes, it can. so if you publish on your yggdrasil node web server information that someone powerful, government or oligarch, doesn't want to be published, then you can be traced and found.
for that i2p or tor should be used. and i2p can be used over yggdrasil.
you said local, it can be local and isolated but there's a global network as well. or there can be several big ones in theory.
๐ jsreed5 ยท Dec 06 at 04:23:
I'm very late to this thread, but I wanted to share some of my thoughts, particularly on what one can do with Yggdrasil.
While the core of Yggdrasil is its routing system--indeed, testing large-scale distributed routing schemes is the entire point of the project--the fact that it's implemented as an IPv6 overlay network gives it enormous power. Every device on the public Yggdrasil network acts as a direct peer, like how people used to use the mainline Internet before NAT and LANs became the norm. This already enables people to host any service they might host over the regular Internet, but using a decentralized routing system that's resilient against censorship.
However, what I love about Yggdrasil is that it can create private distributed networks completely separate from the public one. That's actually my primary use case for it.
I run two Yggdrasil nodes on the same server as my Gemini capsule. One is a public node that connects to other public peers and that anyone can use to join the main Yggdrasil network (found at tcp://jsreed5.org:18000). The other is a private node that only accepts connections from devices that I control, and it doesn't peer with any public nodes. I whitelist my devices by adding their public encryption keys to the the node's config file, then I add the private node (which is reachable by a public Internet address) as a peer to my devices.
This enables all of my devices to connect to each other as if they were on the same physical LAN or WiFi network, even if they aren't. I have a home servers and a NAS, and I run several local services on my computers over HTTP, SSH, RDP, FTP, and other protocols. Yggdrasil allows me to use them no matter where I am. I host a Minecraft server locally, and a friend of mine plays on it from his apartment across town using Yggdrasil. When the family stays in a hotel, we can connect to our home media server and watch our own movies. I even transfer data back and forth with NNCP over Yggdrasil, which is sometimes necessary if my signal is spotty.
Essentially, a private Yggdrasil network has similar functionality to a private VPN. In fact, the official Yggdrasil app on Android uses a VPN connection to open the required network interface. On Windows and Linux, though (and I assume on Mac), it uses its own network interface and can be used in conjunction with a VPN for extra security.
The only downside to a private Yggdrasil network is that, like a private VPN, the primary node must be located at an endpoint that is reachable over the public Internet. I could have used my home servers for that if I had a static IP address, but sadly, I don't. However, I do have a publicly-reachable Gemini capsule, so I use that instead. One could probably use DDNS to self-host a private node, but I've never tried it, so I can't say how well it works.
To be clear, I can do all these things over the public Yggdrasil network too, which would eliminate the need for a private primary peer. However, if I did that, I'd need to be much more stringent about security. On the public network, if I can reach a server at port 22, so can everyone else. I'd need to implement an extra layer of protection such as a DMZ server.
๐ norayr [mod] ยท Dec 07 at 23:59:
However, what I love about Yggdrasil is that it can create private distributed networks completely separate from the public one. That's actually my primary use case for it.
yes, it does not require bootstrap nodes, unlike tor, or ipfs, or tox.
๐ norayr [mod] ยท Dec 08 at 00:00:
and initially me and my friends were using it as private network, we did not have connection to a main yggdrasil.
๐ norayr [mod] ยท Dec 08 at 00:04:
so another use case.
i described here that i created that bonjour yggdrasil bridge. but it has some limitations, so i had to fork pidgin's bonjour plugin and create barev plugin.
it now supports flie transfers, status changes, of course chats, all over yggdrasil.
i'll write in details later.
we are testing it, and it works well.
next we'll write a mobile app and linux program and we came up with the solution on how to treat several devices with different ipv6 addresses as devices of the same person and send messages to all of them.
Original Post
What is the purpose of Yggdrasil? โ Could someone explain the purpose of this network? There is surprisingly little out there -- nothing on wikipedia, and the github site is strangely obtuse. Is this just a networking protocol? encrypted transport? What am I supposed to do with it and why would I?