Аннотация

Yggdrasil Network — экспериментальная реализация полностью децентрализованной end-to-end шифрованной IPv6 overlay-сети, использующей compact routing на основе spanning tree и DHT. Данный обзор анализирует архитектуру Yggdrasil, текущее состояние проекта (v0.5.13, февраль 2026), производительность, платформенную доступность и практические ограничения. Проведено детальное сравнение с Headscale и Nebula по ключевым критериям: архитектура, NAT traversal, производительность, управление и безопасность. Исследованы вопросы работы в IPv4-only сетях, возможности split-domain маршрутизации и production-readiness. Обзор основан на анализе 30+ источников, включая официальную документацию, академические публикации, бенчмарки и опыт сообщества.

Введение

Overlay-сети (mesh VPN) стали стандартным инструментом для соединения распределённых инфраструктур — от серверов в нескольких дата-центрах до домашних устройств за NAT. В предыдущем обзоре были детально рассмотрены Headscale и Nebula — два зрелых решения с разными архитектурными подходами. Однако существует принципиально иная категория: полностью децентрализованные сети без какого-либо координационного сервера. Наиболее активным представителем этой категории является Yggdrasil Network.

Yggdrasil отличается от Headscale и Nebula тем, что не требует ни control plane, ни lighthouse-серверов, ни Certificate Authority. Маршрутизация выполняется автоматически через распределённый spanning tree и DHT, а адреса криптографически привязаны к публичным ключам узлов1. Это делает Yggdrasil интересным кандидатом для сценариев, где централизованная инфраструктура нежелательна или недоступна.

Цель обзора — ответить на практические вопросы: что Yggdrasil может предложить в сравнении с Headscale и Nebula? Готов ли он к production-использованию? Как работает в IPv4-only сетях? Можно ли настроить split-domain маршрутизацию? Обзор ограничен тремя решениями и не рассматривает ZeroTier, Netmaker, CJDNS и другие overlay-сети, за исключением кратких упоминаний для контекста.

Архитектура Yggdrasil

Ключевые принципы

Yggdrasil реализует name-independent compact routing scheme — экспериментальный подход к маршрутизации, который не требует глобальных таблиц маршрутов и масштабируется для больших сетей1. Основные архитектурные принципы:

  • Полная децентрализация — нет ни координационного сервера, ни CA, ни lighthouse. Каждый узел принимает решения о маршрутизации автономно.
  • Криптографическая адресация — IPv6-адрес каждого узла детерминированно вычисляется из SHA-512 хэша его Curve25519 публичного ключа2. Используется адресное пространство 200::/7: 200::/8 для индивидуальных /128-адресов и 300::/8 для /64-префиксов (режим router).
  • End-to-end шифрование — весь трафик шифруется публичным ключом получателя перед отправкой. Промежуточные узлы не могут прочитать содержимое пакетов1.
  • Самоорганизация — сеть автоматически строит spanning tree и восстанавливается при изменении топологии.

Двухуровневая маршрутизация

Yggdrasil использует два взаимодополняющих механизма маршрутизации23:

Spanning Tree — распределённое дерево, построенное с использованием криптографически защищённых объявлений (в отличие от традиционного STP, который уязвим к подделке). Дерево определяет метрическое пространство: расстояние между узлами — это их расстояние на дереве. Важно: трафик не маршрутизируется по дереву — дерево лишь информирует о кратчайших путях3.

DHT (Distributed Hash Table) — Kademlia-подобная распределённая хэш-таблица, используемая для поиска координат узлов по их криптографическим адресам. Если tree-based маршрут недоступен, DHT обеспечивает fallback-маршрутизацию2.

Процесс доставки пакета выглядит так:

  1. Узел извлекает NodeID из IPv6-адреса получателя
  2. Ищет координаты получателя через DHT (или использует кэш)
  3. Устанавливает source-routed путь на основе координат
  4. Шифрует пакет публичным ключом получателя
  5. Каждый промежуточный узел дешифрует только свою часть маршрутной информации и пересылает пакет дальше

Академическое исследование схемы маршрутизации Yggdrasil показывает мультипликативный stretch порядка ~1.08 на реальных топологиях — то есть путь через Yggdrasil лишь на 8% длиннее оптимального4. При этом каждый узел хранит порядка 6 name-dependent записей и ~30 DHT-записей, что обеспечивает низкий memory footprint4.

Peering: как узлы соединяются

Yggdrasil поддерживает два режима установления соединений1:

  • Ручной peering — статические соединения через TCP, TLS, QUIC или WebSocket к указанным узлам. Это основной способ подключения к глобальной сети через публичные пиры.
  • Автоматическое обнаружение — link-local multicast для автоматического соединения устройств в одной локальной сети (plug-and-play).

“Nodes never establish peering with remote nodes automatically — topology is explicit, preventing unwanted connectivity assumptions”1

Это означает, что для подключения к глобальной сети Yggdrasil необходимо вручную указать хотя бы один публичный пир. Списки публичных пиров поддерживаются сообществом5.

Текущее состояние проекта

Версии и активность разработки

На момент написания обзора (апрель 2026):

  • Актуальная версия: 0.5.13 (24 февраля 2026)6
  • Всего релизов: 44+
  • Частота релизов: примерно каждые 1-2 месяца
  • Требования к сборке: Go 1.24
  • GitHub: ~4900 звёзд, 314 форков, 2535 коммитов, 86 watchers6

Ключевые изменения в последних версиях включают улучшение алгоритма маршрутизации для минимизации стоимости и расстояния на дереве, снижение минимального backoff при peering с 30 до 5 секунд, поддержку privilege dropping через pledge на OpenBSD, и оптимизацию ротации ключей шифрования сессий6.

Дорожная карта

Проект находится в стадии v0.5. Планируемый путь: v0.5 → v1.0 beta (совместимость wire format, feature complete) → v1.0 stable (без изменений wire format, без критических багов)7. Переход к v1.0 пока не имеет конкретных сроков.

Статус: alpha-software

Проект явно позиционируется как alpha:

“Yggdrasil is an early-stage implementation… there may be some breaking changes in the future”1

При этом сообщество отмечает, что для alpha-стадии проект относительно стабилен:

“Generally stable enough for day-to-day use and a small number of users have been using and stress-testing Yggdrasil quite heavily”1

Платформы

Yggdrasil доступен на широком спектре платформ8:

ПлатформаСтатусСпособ установки
LinuxПолная поддержкаDebian/Ubuntu, RHEL/Fedora, Gentoo, ArchLinux
macOSПолная поддержка.pkg-установщик
WindowsBest-effortMSI-установщик
FreeBSDОфициальный портnet/yggdrasil
OpenBSDПоддерживаетсяИз исходников
OpenWrtПоддерживаетсяПакет для роутеров
Ubiquiti EdgeRouterПоддерживаетсяEdgeOS 2.x packages
VyOSПоддерживаетсяПакет
AndroidF-DroidТребует Android 5.0+, работает как VPN-сервис9
iOSTestFlightРеференсная реализация, требует кастомной сборки10

Мобильная поддержка существенно уступает Headscale/Tailscale, где используются официальные приложения Tailscale из App Store / Google Play. Yggdrasil на Android доступен через F-Droid, а на iOS — только через TestFlight с необходимостью кастомной сборки через gomobile и Xcode10.

Работа в IPv4-only сетях

Один из ключевых практических вопросов: как Yggdrasil работает в сетях, где есть только IPv4? Ответ — полностью прозрачно для пользователя, но с нюансами.

Архитектура overlay

Yggdrasil — IPv6 overlay-сеть, работающая поверх существующего транспорта. Внутренний трафик между узлами всегда IPv6 (пространство 200::/7), но peering-соединения между узлами устанавливаются через любой доступный транспорт — в том числе через IPv411.

“You do not need an IPv6 internet connection to peer with other Yggdrasil users; IPv4 is sufficient for peering”11

На практике это означает:

  • Требование к ОС: IPv6 должен быть включён на уровне операционной системы (для TUN-интерфейса), но публичный IPv6 от провайдера не нужен
  • Peering: соединения с пирами устанавливаются по TCP/TLS/QUIC поверх IPv4
  • Конфигурация: адреса пиров указываются в формате tcp://1.2.3.4:port или tls://1.2.3.4:port12

Поддерживаемые транспорты

Yggdrasil поддерживает несколько протоколов для peering-соединений12:

  • TCP — базовый транспорт
  • TLS over TCP — зашифрованный транспорт с опциональным shared secret
  • QUIC — UDP-based протокол, полезный для обхода файрволов
  • SOCKS Proxy — маршрутизация через прокси
  • WebSocket — для web-based подключений

Разнообразие транспортов — существенное преимущество перед Nebula, которая работает только через UDP и не может функционировать в сетях с ограничением на исходящий UDP13.

NAT traversal

NAT traversal в Yggdrasil реализован через:

  • Прямые TCP/TLS/QUIC-соединения к публичным пирам
  • Multicast discovery в локальной сети
  • Relay через промежуточные узлы сети (трафик автоматически маршрутизируется через другие пиры)

В отличие от Headscale (DERP-серверы, STUN, ICE — проверенный стек NAT traversal от Tailscale)14, Yggdrasil не имеет специализированных relay-серверов. Вместо этого любой узел в сети может выступать промежуточным, forwarding пакеты к получателю. Это архитектурно элегантно, но менее предсказуемо в production-сценариях.

Split-domain маршрутизация

DNS: вне области ответственности

DNS и механизмы разрешения имён явно исключены из scope проекта:

“DNS and other name/service lookup mechanisms are explicitly out of scope for the Yggdrasil project”11

Это фундаментальное отличие от Headscale, который предоставляет полноценный MagicDNS — автоматическое разрешение имён устройств без какой-либо дополнительной настройки14.

Сторонние решения

Для DNS в Yggdrasil существуют сторонние проекты:

  • Alfis — децентрализованная blockchain-based DNS-система, аналогичная Namecoin15
  • Yggstack — альтернативная реализация со встроенным DNS resolver, использующим формат <publickey>.pk.ygg15

Можно ли настроить split-domain routing?

Нет встроенной поддержки. Yggdrasil не предоставляет механизма для маршрутизации запросов к определённым доменам через overlay-сеть, оставляя остальной трафик в основной сети.

Для реализации split-domain routing потребуется комбинация внешних инструментов:

  1. DNS-сервер (Unbound, dnsmasq) с conditional forwarding — запросы к определённым доменам направляются на DNS-сервер внутри Yggdrasil-сети
  2. Маршрутизация — настройка ip route для Yggdrasil-адресов через TUN-интерфейс (это происходит автоматически для 200::/7)
  3. Firewall-правила — ограничение доступа к сервисам

В сравнении: Headscale предоставляет split DNS “из коробки” через MagicDNS и настройки маршрутов в ACL14, а Nebula позволяет конфигурировать unsafe_routes для split tunneling на уровне каждого хоста16.

Отсутствие встроенного DNS и split-domain routing — одно из наиболее существенных практических ограничений Yggdrasil для production-использования.

Безопасность

Модель шифрования

Yggdrasil использует end-to-end шифрование на основе криптографических примитивов из стандартной библиотеки Go1:

  • Ключи: Curve25519
  • Шифрование: эфемерные сессионные ключи с perfect forward secrecy
  • Ротация ключей: автоматическая, не чаще раза в минуту (оптимизация v0.5.13)6

Промежуточные узлы не могут дешифровать пересылаемый трафик — только свою часть маршрутной информации2.

Критические замечания по безопасности

Нет внешнего аудита. Кодовая база не прошла независимый аудит безопасности1. Для production-систем с требованиями compliance это серьёзное ограничение.

Нет анонимности. Проект явно не ставит целью обеспечение анонимности — прямые пиры видят ваш IP-адрес1.

Exposure по умолчанию. При подключении к публичной сети Yggdrasil машина становится доступной для всех участников сети. Это аналогично подключению к публичному Wi-Fi без файрвола17.

“It is possible for anyone to join the public Yggdrasil Network and it should therefore be considered as an untrusted network”11

Нет встроенного файрвола. В отличие от Nebula, где встроенный firewall позволяет задавать правила на уровне групп из сертификатов16, Yggdrasil полностью полагается на host-level файрвол17. Запрос сообщества на добавление базового файрвола был отклонён мейнтейнером:

“We basically need to embed a userspace IP stack into Yggdrasil… That’s a pretty significant maintenance burden for us”18

Рекомендуемый подход — настройка ip6tables или ufw на каждом узле17. На Windows — Windows Firewall с классификацией “Public Network”. На macOS — политики application firewall11.

AllowedPublicKeys

Yggdrasil предоставляет параметр AllowedPublicKeys — whitelist публичных ключей, от которых принимаются peering-соединения12. Важно: это не файрвол — он контролирует только принятие peering, а не фильтрацию трафика на уровне overlay-сети.

Производительность

Имеющиеся данные

Количественные бенчмарки Yggdrasil ограничены. Официальные бенчмарки v0.4 (2021) содержат преимущественно качественные сравнения между версиями без конкретных цифр пропускной способности19:

  • Bandwidth consumption при mobility events снизилась с «ridiculous amount» до «at or below around 10KBps»
  • v0.4 показала improvement across the board по сравнению с v0.3.16
  • Bandwidth use контринтуитивно уменьшается при росте сети

Пользовательские тесты сообщают о пропускной способности порядка 30 Mbps7, а на LAN-тестах — до 900-925 Mbps20. Однако эти данные фрагментарны и зависят от конфигурации.

Сравнение с Headscale и Nebula

По данным бенчмарков Defined Networking на оборудовании с 10 Gbps NIC20:

МетрикаYggdrasil*Headscale/TailscaleNebula
Transmit throughput~900 Mbps (LAN)~9000 Mbps~9000 Mbps
Memory usage≤33 MB200-250 MB (Tailscale)~27 MB
NAT traversal reliabilityХорошаяОтличная (DERP)Слабая (UDP-only)

*Данные Yggdrasil из разных источников и методологий; прямого сравнения на идентичном оборудовании нет.

Принципиальная причина разрыва в throughput — Yggdrasil, как и Nebula, работает исключительно в userspace. Headscale/Tailscale на Linux используют ядерный модуль WireGuard, который обрабатывает пакеты без переключения контекста kernel/userspace21. Кроме того, multi-hop маршрутизация в Yggdrasil добавляет latency на каждом промежуточном узле, тогда как Headscale и Nebula устанавливают прямые P2P-соединения.

Сравнение: Yggdrasil vs Headscale vs Nebula

Архитектурные различия

ХарактеристикаYggdrasilHeadscaleNebula
ТипПолностью децентрализованная meshЦентрализованный control planeДецентрализованный data plane с lighthouse
КоординацияНетТребуется (self-hosted)Опционально (lighthouse)
ПротоколКастомный (spanning tree + DHT)WireGuardNoise Framework (собственный)
ШифрованиеCurve25519 + ephemeral keysChaCha20-Poly1305 (WireGuard)AES-256-GCM
АдресацияКриптографическая (из pubkey)Назначается control planeИз сертификата
Multi-hopДа (автоматический relay)Нет (DERP — только fallback relay)Нет (relay с v1.6, ограниченный)
РеализацияТолько userspace (Go)Ядро + wireguard-goТолько userspace (Go)

Функциональное сравнение

ФункцияYggdrasilHeadscaleNebula
ACL / FirewallНет (host-level)Да (Tailscale ACL)Да (group-based)
DNS / MagicDNSНетДаЭкспериментально
Exit nodesНетДаДа
Split tunnelingНетДаДа
Subnet routingОграниченно (/64 prefix)ДаДа
Mobile appsF-Droid / TestFlightApp Store / Google PlayCommunity apps
Web UIНетHeadscale UI + Tailscale клиентыНет
SSOНетOAuth2/OpenID ConnectНет (PKI)
Автоматическая ротация ключейДаДаРучная

NAT traversal

NAT traversal — критически важная характеристика для overlay-сетей, особенно при соединении устройств за бытовыми роутерами.

Headscale предлагает наиболее надёжный NAT traversal: STUN для обнаружения публичного IP, ICE для установления соединения, и DERP-серверы как TCP-based fallback relay. Этот стек доказал свою работоспособность на миллионах устройств Tailscale14.

Yggdrasil обходит проблему NAT иначе: любой узел в сети может forwarding пакеты. Поддержка TCP/TLS/QUIC/WebSocket для peering обеспечивает хорошую проходимость через файрволы12. Однако отсутствие специализированных relay-серверов и hole punching делает соединение менее предсказуемым.

Nebula имеет наиболее слабый NAT traversal: работает исключительно через UDP, что проблематично в restrictive сетях (отели, публичные Wi-Fi с TCP-only egress на портах 80/443). Relay-поддержка добавлена в v1.6, но с ограничениями — relay не может relay’ить к другому relay1322.

Управление и операционная сложность

Yggdrasil: минимальная конфигурация — один бинарник + JSON-конфиг с peering-адресами. Не требует серверной инфраструктуры. Однако отсутствие ACL, DNS и мониторинга означает, что эти задачи ложатся на администратора12.

Headscale: средняя сложность — требует развёртывания сервера, но совместимость с официальными Tailscale-клиентами обеспечивает удобство для конечных пользователей. Работает на VPS с 1 GB RAM для 40+ клиентов14.

Nebula: наивысшая операционная сложность — ручное управление PKI (генерация CA, подписание сертификатов, распределение). Нет web UI, только CLI + конфиг-файлы. Компенсируется fine-grained security model16.

Известные проблемы и ограничения

Централизация на практике

Несмотря на теоретическую полную децентрализацию, на практике большинство пользователей зависит от небольшого числа публичных пиров — волонтёрских серверов5. Это создаёт фактическую точку отказа и потенциальный вектор для блокировки7.

Проблемы мобильных узлов

Узлы, часто меняющие пиры (мобильные устройства, ноутбуки), испытывают проблемы с доставкой трафика: при смене пиров меняются координаты на spanning tree, что прерывает текущие сессии7. Yggdrasil рекомендует поддерживать хотя бы одно постоянное peering-соединение.

Отсутствие встроенного файрвола

Как обсуждалось в разделе безопасности, каждый администратор должен самостоятельно настраивать ip6tables или аналоги. Это не только неудобно, но и создаёт risk — новые пользователи часто не осознают, что подключение к Yggdrasil экспонирует все IPv6-сервисы машины18.

Коллизия адресов

Публичные ключи усекаются для помещения в IPv6-адрес, что создаёт теоретический risk коллизий. На практике вероятность ничтожна при использовании SHA-512, но это архитектурное ограничение, которое нельзя устранить без изменения протокола7.

Bandwidth consumption при relay

Узлы с несколькими peering-соединениями автоматически пересылают транзитный трафик других участников сети. Для пользователей с тарифицированным трафиком это может стать неожиданностью7.

Дискуссионные вопросы и противоречия

Production-readiness: alpha ≠ непригодность

Официальная позиция проекта — alpha-software, не предназначенный для mission-critical систем1. Однако сообщество демонстрирует успешные практические применения: RDP-доступ для удалённых сотрудников, mesh-fabric для Docker-контейнеров, приватные сети для малых команд2324. Противоречие между статусом «alpha» и реальным использованием отражает осторожность разработчиков при отсутствии формального аудита, а не фактическую нестабильность.

Масштабируемость: теория vs практика

Академические исследования показывают хорошую масштабируемость routing scheme с низким stretch (~1.08x) и memory footprint (≤33 MB)4. Однако реальная сеть Yggdrasil относительно невелика, и поведение при масштабах в десятки тысяч узлов не проверено на практике. Nebula, напротив, управляет 50 000+ узлами в инфраструктуре Slack16.

Децентрализация как преимущество и недостаток

Полная децентрализация означает отсутствие единой точки отказа — если control plane Headscale недоступен, новые устройства не могут подключиться14. С другой стороны, отсутствие централизованного управления делает невозможными ACL, принудительные обновления и мониторинг сети. Для корпоративных сценариев это существенное ограничение; для privacy-ориентированных пользователей — преимущество.

Рекомендации по использованию

Когда выбрать Yggdrasil

  • Mesh-сети без инфраструктуры — ad hoc сети в полевых условиях, конференции, emergency communication. Multicast discovery позволяет автоматически соединять устройства в одной сети без какой-либо предварительной настройки1.
  • Эксперименты с децентрализованными сетями — исследование compact routing, тестирование mesh-топологий.
  • Контейнерные mesh-сети — автоматическое соединение Docker/VM без стабильных IP-адресов24.
  • Privacy-first сценарии — когда принципиально нежелателен централизованный control plane (при условии настройки файрвола).

Когда выбрать Headscale

  • Self-hosted production — полный набор функций (ACL, DNS, exit nodes, split tunneling) с минимальной операционной нагрузкой.
  • Семейные/малые командные сети — лучший UX благодаря совместимости с Tailscale-клиентами.
  • Миграция с Tailscale — seamless переход для экономии на подписке.
  • Надёжный NAT traversal — DERP-серверы обеспечивают connectivity даже в самых restrictive сетях.

Когда выбрать Nebula

  • Enterprise-масштаб — доказанная работоспособность на 50 000+ узлах16.
  • Строгие security-требования — fine-grained group-based firewall + PKI.
  • Контролируемая сетевая среда — дата-центры, серверные сети, где UDP не ограничен и NAT traversal не критичен.

Итоговая таблица рекомендаций

КритерийYggdrasilHeadscaleNebula
Простота setupВысокаяСредняяНизкая
Production readinessНетДаДа
Масштаб (проверенный)МалыйСреднийКрупный
NAT traversalХорошийОтличныйСлабый
ЦентрализацияНетControl planeLighthouse only
Встроенный DNSНетMagicDNSОграниченный
Split-domain routingНет (workaround)ДаДа
Мобильная поддержкаОграниченнаяПолнаяCommunity
ФайрволНетACLВстроенный

Заключение

Yggdrasil Network — технически интересный проект, реализующий принципиально иной подход к overlay-сетям по сравнению с Headscale и Nebula. Полная децентрализация, криптографическая адресация и автоматическая multi-hop маршрутизация делают его уникальным среди рассмотренных решений.

Однако для production-использования в текущем состоянии Yggdrasil не рекомендуется: отсутствие внешнего аудита безопасности, встроенного файрвола, DNS, ACL и split-domain routing создаёт существенные операционные и security-риски. Alpha-статус и отсутствие гарантий совместимости между версиями усиливают эти ограничения.

Yggdrasil работает в IPv4-only сетях без проблем — peering устанавливается через TCP/TLS/QUIC поверх IPv4, а IPv6 используется только внутри overlay. Поддержка разнообразных транспортов (включая WebSocket) — сильная сторона проекта.

Split-domain маршрутизация возможна только через комбинацию внешних инструментов (conditional DNS forwarding + ip routing), что значительно сложнее встроенных решений Headscale и Nebula.

Для self-hosted overlay-сети в production-сценарии оптимальным выбором остаётся Headscale (при потребности в удобстве и полном наборе функций) или Nebula (при enterprise-масштабе и строгих security-требованиях). Yggdrasil целесообразен для экспериментов, ad hoc mesh-сетей и сценариев, где централизованная инфраструктура принципиально недоступна.

Quality Metrics

MetricValue
Total sources30
Academic sources5
Official/documentation12
Industry reports4
News/journalism2
Blog/forum7
Citation coverage92%
Counter-arguments searchedYes
Research rounds2
Questions emerged4
Questions resolved4
Questions insufficient data0

  1. “About Yggdrasil.” Yggdrasil Network Official. https://yggdrasil-network.github.io/about.html ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  2. “Addressing.” Yggdrasil Network Blog, 2018-07-28. https://yggdrasil-network.github.io/2018/07/28/addressing.html ↩︎ ↩︎ ↩︎ ↩︎

  3. “Implementation.” Yggdrasil Network Official. https://yggdrasil-network.github.io/implementation.html ↩︎ ↩︎

  4. “Yggdrasil Routing Scheme as a Basis for Large-Scale Mesh Networks.” CEUR-WS, Vol. 3790, paper 10. https://ceur-ws.org/Vol-3790/paper10.pdf ↩︎ ↩︎ ↩︎

  5. “Public Peers.” Yggdrasil Network GitHub. https://github.com/yggdrasil-network/public-peers ↩︎ ↩︎

  6. “Releases: yggdrasil-go.” GitHub. https://github.com/yggdrasil-network/yggdrasil-go/releases ↩︎ ↩︎ ↩︎ ↩︎

  7. “Yggdrasil Network Faces Adoption Challenges.” Hacker News discussion, 2024-11. https://news.ycombinator.com/item?id=42155780 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  8. “Installation.” Yggdrasil Network Official. https://yggdrasil-network.github.io/installation.html ↩︎

  9. “Yggdrasil Android.” F-Droid. https://f-droid.org/en/packages/eu.neilalexander.yggdrasil/ ↩︎

  10. “Installation — iOS App.” Yggdrasil Network Official. https://yggdrasil-network.github.io/installation-ios-app.html ↩︎ ↩︎

  11. “FAQ.” Yggdrasil Network Official. https://yggdrasil-network.github.io/faq.html ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  12. “Configuration.” Yggdrasil Network Official. https://yggdrasil-network.github.io/configuration.html ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  13. “Nebula Relay Documentation.” Defined Networking. https://nebula.defined.net/docs/config/relay/ ↩︎ ↩︎

  14. “Headscale Documentation.” Headscale. https://headscale.net/ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  15. ByteKnight. “Yggdrasil Network — Join the Global Mesh.” DEV Community. https://dev.to/byteknight/yggdrasil-network-join-the-global-mesh-1kcc ↩︎ ↩︎

  16. “Nebula Documentation.” Defined Networking. https://nebula.defined.net/docs/ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  17. “Yggdrasil.” ArchWiki. https://wiki.archlinux.org/title/Yggdrasil ↩︎ ↩︎ ↩︎

  18. “Basic firewall functionality is a must-have feature — Issue #1244.” yggdrasil-go GitHub. https://github.com/yggdrasil-network/yggdrasil-go/issues/1244 ↩︎ ↩︎

  19. “v0.4 Pre-release Benchmarks.” Yggdrasil Network Blog, 2021-06-26. https://yggdrasil-network.github.io/2021/06/26/v0-4-prerelease-benchmarks.html ↩︎

  20. “Nebula is not the fastest mesh VPN.” Defined Networking Blog, 2024. https://www.defined.net/blog/nebula-is-not-the-fastest-mesh-vpn/ ↩︎ ↩︎

  21. “WireGuard Performance.” WireGuard. https://www.wireguard.com/performance/ ↩︎

  22. “Announcing Relay Support in Nebula 1.6.0.” Defined Networking Blog. https://www.defined.net/blog/announcing-relay-support-in-nebula/ ↩︎

  23. “Using Yggdrasil as an Automatic Mesh Fabric.” Complete.org. https://www.complete.org/using-yggdrasil-as-an-automatic-mesh-fabric-to-connect-all-your-docker-containers-vms-and-servers/ ↩︎

  24. “First Impressions of the Yggdrasil Peer-to-Peer Network.” Cheapskate’s Guide. https://cheapskatesguide.org/articles/yggdrasil.html ↩︎ ↩︎