gemlog/public/uk/yggdrasil-is-network-with-distributed-routing.gmi
2025-09-11 12:43:12 +03:00

115 lines
No EOL
6 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Yggdrasil - мережа з децентралізованою маршрутизацією
Yggdrasil - експериментальний протокол для побудови само-організованої локальної мережі з шифруванням трафіку та підтримкою оверлейного підключення через Інтернет.
В своїй основі використовує приватний ключ для генерації постійних псевдо-адрес IPv6 в діапазоні 0200::/7.
Має різні сфери застосування, зокрема:
* автоматизована побудова локальних мереж
* маскування IP (як транспорт I2P)
* обхід блокувань та обмежень віртуальної адресації NAT
Останній варіант корисний для організації:
* відео-спостереження без наявності виділеної адреси
* розгортання домашнього веб-серверу
* віддаленого керування інфраструктурою підприємства тощо
Завдяки простоті встановлення та здатності до саморозгортання підключень, здобув широку популярність зокрема серед користувачів CJDNS.
## Встановлення
Yggdrasil написаний на Go, початковий код доступний в репозиторії на GitHub:
=> https://github.com/yggdrasil-network/yggdrasil-go
В системах Debian, бінарні збірки можуть бути встановлені з репозиторію командою:
```
apt install yggdrasil
```
Також доступні офіційні збірки для кожної версії:
```
wget https://github.com/yggdrasil-network/yggdrasil-go/releases/download/v0.5.5/yggdrasil-0.5.5-amd64.deb
dpkg -i yggdrasil-0.5.5-amd64.deb
```
## Налаштування
У разі підключення до мережі Yggdrasil через Інтернет, необхідно додати до файлу конфігурації щонайменше один географічно близький публічний вузол:
=> https://publicpeers.neilalexander.dev
``` /etc/yggdrasil/yggdrasil.conf
Peers: [
tls://xx.xx.xx.xx:xxxx
]
```
Також, зручно вказати назву для інтерфейсу Yggdrasil - щоб потім не плутати його наприклад з VPN:
``` /etc/yggdrasil/yggdrasil.conf
IfName: ygg0
```
Після цього можна перезапустити сервіс, щоб застосувати зміни:
```
systemctl restart yggdrasil
```
Якщо все зроблено правильно, можна спробувати відкрити URL з каталогу сервісів:
=> https://yggdrasil-network.github.io/services.html
## Додатково
Перевірити наявність нового інтерфейсу можна командою:
```
ifconfig
```
Отримати власну адресу:
```
yggdrasilctl getself
```
Можна створювати маски підмереж для окремих сервісів - вебсайти, пошта, та інше:
```
ifconfig lo inet6 add 3xx:xxxx:xxxx:xxxx::xx
```
* де 3xx:xxxx:xxxx:xxxx - адреса з yggdrasilctl getself
Якщо підключення відбувається через власний публічний вузол, на ньому відкривається довільний порт.
У разі необхідності обмеження доступу для невідомих динамічних адрес, починаючи з версії 0.5.0 можна вказувати пароль в параметрі password:
* tls://[::]:12345?password=123456abcdef - сервер
* tls://a.b.c.d:12345?password=123456abcdef - клієнт
Початківцям важливо встановити мережний екран, наприклад ufw для iptables, інакше такі служби як принтери або локальні веб-сервери для розробки (що стандартно прослуховують 0.0.0.0) можуть стати доступними для інших учасників локальної мережі.
З цієї точки зору, буде зручним організація окремого роутеру наприклад на базі OpenWRT.
Важливо розуміти, що Yggdrasil не має на меті захист від ідентифікації користувача в мережі, порівнюючи з анонімайзерами Tor чи I2P.
Іноді, може використовуватись як додатковий канал, але походження його пакетів може бути встановлено, якщо не використовуються такі засоби маскування трафіку як Shadowsocks та інші.
Yggdrasil - перш за все альтернативний маршрутизатор, який дозволяє автоматично створювати перманентні IPv6 адреси в середовищі IPv4 та є корисним інструментом для швидкого розгортання інфраструктури локальних дротових, лазерних та радіо мереж.
## Посилання
=> https://yggdrasil-network.github.io Офіційна сторінка
=> https://github.com/yggdrasil-network Проєкт на GitHub
=> https://yggdrasil-map.cwinfo.net Орієнтовна мапа вузлів
## Дивіться також
=> yggmail-messenger-with-email-protocol.gmi Yggmail - месенджер з поштовим інтерфейсом