Mesh in one import
Join the Yggdrasil network with end-to-end encryption and IPv6 addresses from the 200::/7 range — without external daemons.
Embedded Yggdrasil mesh nodes for Go applications.
One import to join the end-to-end-encrypted IPv6 Yggdrasil mesh: clients, servers, SOCKS5, port forwarding and discoverable nodes — no TUN interface, no root, no external daemon.
ratatoskr is a Go library for embedding a Yggdrasil node directly into your application. It runs a userspace TCP/UDP stack on gVisor netstack, so there is no TUN device, no root access and no separate daemon to manage.
You reach the mesh through the standard Go interfaces you already know — DialContext, Listen and ListenPacket — while the ratatoskr.Obj facade ties together the core, SOCKS5, the peer manager, NodeInfo and snapshots.
This site is an early showcase. More documentation, dashboards and guides will land here over time — for now, the source and reference live on GitHub.
Join the Yggdrasil network with end-to-end encryption and IPv6 addresses from the 200::/7 range — without external daemons.
HTTP, TCP and UDP over the mesh: expose services and connect to peers by their public key.
A SOCKS5 proxy and port forwarding to route ordinary traffic through the encrypted mesh.
Add, remove and probe peers, run discoverable nodes and inspect the network topology.
A CGO-free library with a clear API — drop it into a client, a service or a CLI.
# install
go get github.com/voluminor/ratatoskr