Hacker News new | past | comments | ask | show | jobs | submit login

I read the website.

I read the "About" page.

I read project's Github page.

Still - can't figure out what the project does and what would be practical application for it?.

Is it something like Tailscale?




"Still - can't figure out what the project does and what would be the practical application for it."

It is a computer network, like the internet. As a computer network, the practical application for it is similar to practical application for the internet.^1 One of its advantages over the internet is that users control their own IP addresses, not ISPs, and peer-to-peer connectivity is made easier. There is also no need for the use of TLS and all the third parties that profit as email/web gatekeepers. A peer-to-peer network offers an escape from an internet and web full of self-appointed third party middlemen, e.g., RIRs, ICANN, "tech" companies, certificate authorities, etc., who exploit their position for profit.

1. For example, people can run the same services via yggdrasil as they do via internet: https://yggdrasil-network.github.io/services.html


Yggdrasil hands you a an IPv6 /64 subnet. Most nodes on Yggdrasil assign themselves a single, stable IPv6 address. They then communicate to other IPv6 nodes in the network. Traffic on the network is E2E encrypted using a cryptographic keypair. Because of this, you don't need to use anything like TLS on the network. Just share your IPv6 address with others and you're good to go.


So it's like CJDNS? Looking at the FAQ, is answers to this question. In short, it's inspired by CJDNS, but doesn't use supernodes.


It is "a cjdns clone with different routing".^1

Original cjdns did not have supernodes.

When the author began contributing to cjdns had supernodes been added yet.

1. https://yggdrasil-network.github.io/2019/01/09/history.html

I first learned of cjdns from a video I saw on YouTube in 2012.^2 I was impressed by this person being interviewed. He described the most fundamental problems with the internet in plain English anyone could understand and he actually had a working solution!

The interviewer however did not seem to understand what the author was talking about. :)

2. https://www.youtube.com/watch?v=zINQYkl01N8


> The interviewer however did not seem to understand what the author was talking about. :)

Heh, I'm not sure if you realize this and are teasing me, but I'm the interviewer in that video! :-)

(or at least, a version of me that existed 10 years ago; amazing that it's been that long)


I'm teasing. :)

I thought it was a reasonably good interview, he was allowed to say what he wanted to say. Thanks for doing that.

I always wondered, was that the first time the project was announced publicly?


Not only that but the interviewer came across as incredibly rude. Made the interview awkward.


Which part(s) did you think were rude?


26:32 in the interview. The interviewer was dismissive of this very talented developer and the developer just falls silent because they made the moment awkward.


Yes. It's broadly considered a successor to CJDNS.


I was not aware CJDNS was unmaintained (or considered archaic). Do you have a resource comparing CJDNS, Yggdrasil, Zeronet and maybe other similar protocol? Bonus points if there's mentions of possibilities for interoperability (or incompatibilities) between these networks, and/or discussion about the shortcomings pointed out by the matrix people when developing their Pinecone routing scheme.


> I was not aware CJDNS was unmaintained (or considered archaic).

It seems (for some definition of seem lol) that more mindshare these days is around Ygg. CJDNS's author is working on something else at the moment primarily, and while they're still committed to working on CJDNS, their attention is split. Ygg is getting regular changes. Ygg's codebase being in Go also makes it a bit easier to get contributions in. But keep in mind that this may just be biased based on the circles I'm spending time in.

> Do you have a resource comparing CJDNS, Yggdrasil, Zeronet and maybe other similar protocol?

I wish I did. This would be a great thing to put together. Maybe I should spend some time properly comparing the two.


> Is it something like Tailscale?

Kind of, in that you can use it to replace Tailscale if you want. Using Yggdrasil as a DIY Tailscale replacement is probably less work than manually configuring WireGuard, because it handles the mesh features of Tailscale for you.

All nodes are publicly routable rather than private, though. If you want to lock everything down to emulate Tailscale, you can just configure your firewall to only allow traffic from a whitelist of your devices' Yggdrasil addresses[1].

[1]: https://yggdrasil-network.github.io/2018/07/15/remote-access...


> All nodes are publicly routable rather than private, though.

As long as you don't add a public peer to any of your nodes, your network is private.


Yes, but then you have to worry about routing again. The whole point of something like Tailscale or Yggdrasil is to handle the routing problem for me.


I don't really understand what you mean. Yggdrasil will automatically discover and peer with other hosts running Yggdrasil on your network. Connecting your network, across the internet to another network is no different than connecting to a public peer.

My biggest concern with Yggdrasil is that, without careful configuration of every node, anyone can connect to your Yggdrasil network and potentially expose it to the public Yggdrasil network.

I've moved on to experimenting with Nebula (made by Slack). This is made specifically for closed networks and has built in tools to restrict access. I still REALLY like Yggdrasil and will continue to experiment with it; just not for private meshing.


Current Internet "works" in a very complicated way, ISPs and apps handle all the hassles, wire and wireless infrastructures, effective routing, certificate authority, encryption, permission control.

Clients who won't notice until they want to form a network at wild themself. In addition, average app developers are error prone at cryptography which are potential security holes.

Yggdrasil deals all of them as an all in one solution. Ad-hoc WiFi is enough to form a network. IP address is username, routing address and public key. App built on Yggdrasil is also freed from dealing with encryption and permission control.


Very similar in use, a bit different in how it does it (decentralized), a lot earlier in it's development.


The claims around "scalable" and "self-healing" are very vague indeed.

Yggdrasil is just an overlay over the existing Internet, not a replacement, which removes a lot of its usefulness.

Perhaps this means, in theory, that if you switch between multiple ISPs (e.g. phone + ADSL) or have dynamic IPv4 address, the IPv6 connectivity over Yggdrasil will stay the same.


First of all, its is a research project. The owners are very clear about that and love to repeat its lack of any guarantees ;-)

Personally I've been using it for a while and its indeed living up to its promises, but ymmd.

It is indeed an overlay network by the simple rule of that being something that people can use. Technically the guys require the underlying protocol to keep order (one after another) in the packages for the stuff to work. Which is why building it on top of tcp/ip makes sense. Note that the ordering requirement is likely to be removed in a future iteration, again this is a research project.

Ideas like doing a mesh using antenna's in your city are thus, for now, out of reach. But the core concepts and approaches will likely map very nicely to such a usecase and the lessons learned as an overlay will help such a future design.

The public network is currently around 4000 nodes, which is why "scalable" is indeed meant to be vague. Tests of a million nodes are going to be required, probably in a future protocol iteration, to make clear statements about how scalable it really is. Signs are good, DHT usage is still very low while we saw a doubling of network size in the last 6 months.

In short, I use it daily. It works for me.


Reading https://yggdrasil-network.github.io/about.html it's even more unclear. They claim to have invented something much better than traditional routing but there is no mention of how Yggdrasing perform bandwidth/latency/cost-aware routing.


If you are interested, I suggest you stop by on the matrix room and chat about the different topics. Its rather large and I'm not a developer on the project, just someone learning from those better than me. Mostly in that room.

#yggdrasil:matrix.org


Yggdrasil doesn't need Internet but existing IPv6/IPv4. Ad-hoc Wifi or local router with multicast support is enough for Yggdrasil to run automatically.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: