Colour theme
GitHub

ratatoskr

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 mascot

What is ratatoskr?

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.

Mesh in one import

Join the Yggdrasil network with end-to-end encryption and IPv6 addresses from the 200::/7 range — without external daemons.

Servers and clients

HTTP, TCP and UDP over the mesh: expose services and connect to peers by their public key.

Proxy and forwarding

A SOCKS5 proxy and port forwarding to route ordinary traffic through the encrypted mesh.

Peer management

Add, remove and probe peers, run discoverable nodes and inspect the network topology.

Pure Go

A CGO-free library with a clear API — drop it into a client, a service or a CLI.

Quick start

# install
go get github.com/voluminor/ratatoskr