mirror of
https://codeberg.org/postscriptum/gemlog.git
synced 2026-02-19 06:22:41 +00:00
115 lines
No EOL
6 KiB
Text
115 lines
No EOL
6 KiB
Text
# 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 - месенджер з поштовим інтерфейсом |