HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
yggdrasil-network
yggdrasil-go
Go2019–2026
yggdrasil-network / yggdrasil-go

yggdrasil-go

An experiment in scalable routing as an encrypted IPv6 overlay network

15Distinct people
15Mentions
0Explicit recommenders
5.6KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

An experiment in scalable routing as an encrypted IPv6 overlay network

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year15 dated mentions

Observed mentions: 2019-11-01 11:35:33 UTC to 2026-09-01 01:45:28 UTC.

012342019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments20222023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC000
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC312
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC404
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC202
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC202
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC101

What Hacker News says

15 sources
> The next version will make it much simpler to deploy isolated networks by using TLS roots to prevent accidental peerings. Is that PR #1038 [1]? Any info on how to use that feature and whether it works over multicast as well? I noticed this PR uses SHA-1 for matching fingerprints. SHA-1 has been broken for 18 years now. Is it possible to use something more secure? > It's also worth noting that Yggdrasil doesn't have the equivalent of "peer exchange" — only directly connected peers would ever find out your public IP address. Yggdrasil will not form new peerings automatically, with the single exception being multicast-discovered nodes on the same LAN. Right, my worry is that by having a server with a public IPv4 address and Yggdrasil running on an open port (so that my other nodes can connect to it) will allow someone else to connect to it
Read the rest
(either on purpose or accidentally) and cause my traffic to route over their node(s) and/or the public mesh. Thanks! [1] https://github.com/yggdrasil-network/yggdrasil-go/pull/1038
In Tinc, a GPLv2 mesh routing VPN
Hopefully the network segregation[1] feature makes it in at some point: > A shared network key, included in the tree announcements, will ensure that two nodes that peer with what should be segregated networks will ignore each other. This should make it much easier to operate private Yggdrasil meshes and not worry that they will end up accidentally peered to the public network. [1]: https://github.com/yggdrasil-network/yggdrasil-go/discussion...
In Tinc, a GPLv2 mesh routing VPN
From a purely networking perspective, there are far better solutions than tailscale. Have a look at full mesh VPNs like: https://github.com/cjdelisle/cjdns https://github.com/yggdrasil-network/yggdrasil-go https://github.com/gsliepen/tinc https://github.com/costela/wesher These build actual mesh networks where every node is equal and can serve as a router for other nodes to resolve difficult network topologies (where some nodes might not be connected to the internet, but do have connections to other nodes with an internet connection — I work with networks like that every day). Sending data through multiple routers is also possible. They also deal with nodes disappearing and change routes accordingly. tailscale (and similar solutions like netbird) still use a bunch of "proxy servers" for that. You can set them up on intermediate nodes, but
Read the rest
that have to be dealt with manually (and you get two kinds of nodes). You also have to create routes for the node to be able to access the control server.
In Golink: A private shortlink service for tailnets
The only real solution long-term is completely peer-to-peer ad-hoc networking that doesn't depend on BGP. A few projects are in similar territory but none I've seen are working at the layer of bypassing BGP. Many are just acting as an overlay; which works to an extent. https://github.com/yggdrasil-network/yggdrasil-go It's probably begging for a different model of the "internet" and where data lives. My requirements: 1. Offline-first applications that sync via a pub/sub DHT of trusted peers. More details here but basically allows bypassing BGP. 2. Trusted peers are routable via a determinstic pathing algoritm without exposing the recipient. (content addressable everything). 3. Automatically distribute storage and compute on all local devices a user has and or needs (it's so dumb and wasteful that I only use one computer at a time when I h
Read the rest
ave hundreds at my home at different levels of compute from thermostat to fridge to laptop to desktop). I've thought about this for a long time and planned many requirements out. I was very committed to working on it but then I lost motivation because I don't get along with most humans today and where the world seems to be going. It also sucks to have people think your ideas are crazy. Oh well.
In The Iran Firewall: A preliminary report
> I’ve been dreaming lately of a tor-like network that’s based loosely on the idea of tailnets. Rather than blockchain bullshit, you’d have a direct ring of trust with friends, and then you could set up access policies to forward packets for people you don’t trust, but who know someone you do trust. Might want to check out Yggdrasil. It lets you can create a real mesh routed, E2E encrypted network. You can keep your network private, or connect it to the greater network and route others. There's no ring-of-trust (I can't imagine that as a viable solution at scale). But the config file has an AllowedPublicKeys section if you want to specify who can route through your node. https://github.com/yggdrasil-network/yggdrasil-go
In Tailscale raises $100M
There is an overview in the whitepaper: https://github.com/yggdrasil-network/yggdrasil-go/blob/maste... It fits the "private VPN" use-case quite well in my experience. You can connect to the wider network over the Internet, or just set your nodes up. If yggdrasil is installed on every router, it automatically creates a nice network topology, since it finds peers on the local subnet. Router advertising is also a possibility. Though there's no real drawback to connecting to the wider network since it's end-to-end encrypted, you have to be aware that specifying more than one peer will make it possible for traffic to be routed trough you, so the whole network performance can be sensitive to the choices that are made when peering over the Internet, as I think hop count is the only metric for now. For private meshes, I don't think you can speci
Read the rest
fy fallback peer addresses over the Internet, so you have a bit of the same risk here. I've seen some info on mesh wireguard networks with peer information stored in DNS at this year's FOSDEM, but that's currently definitely more configuration than yggdrasil. End-to-end encryption and the ability to generate your own static, roaming-compatible IPs is nice. I just wish one could open sockets directly with a crypto key rather than the derivated IP. For more discussion, I can really recommend the Matrix chat room :)
In What Happens Inside a 100-Hop IPv6 Wireless Mesh Network?

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.