Yggdrasil - mereža z decentralizovanym routyngom
Yggdrasil - eksperymental'nyj protokol dlja pobudovy samo-organizovanoji lokal'noji mereži z šyfruvannjam trafiku ta pidtrymkoju overlejnogo pidključennja čerez Internet.
V svojij osnovi vykorystovuje pryvatnyj ključ dlja generaciji postijnyh psevdo-adres IPv6 v diapazoni 0200::/7.
Maje rizni sfery zastosuvannja, zokrema:
- avtomatyzovana pobudova lokal'nyh merež
- maskuvannja IP (jak transport I2P)
- obhid blokuvan' ta obmežen' virtual'noji adresaciji NAT
Ostannij variant korysnyj dlja organizaciji:
- video-sposterežennja bez najavnosti vydilenoji adresy
- rozgortannja domašnjogo veb-serveru
- viddalenogo keruvannja infrastrukturoju pidpryjemstva toščo
Zavdjaky prostoti vstanovlennja ta zdatnosti do samorozgortannja pidključen', zdobuv šyroku populjarnist' zokrema sered korystuvačiv CJDNS.
Vstanovlennja
Yggdrasil napysanyj na Go, počatkovyj kod dostupnyj v repozytoriji na GitHub:
V systemah Debian, binarni zbirky možut' buty vstanovleni z repozytoriju komandoju:
apt install yggdrasil
Takož dostupni oficijni zbirky dlja kožnoji versiji:
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
Nalaštuvannja
U razi pidključennja do mereži Yggdrasil čerez Internet, neobhidno dodaty do fajlu konfiguraciji ščonajmenše odyn geografično blyz'kyj publičnyj vuzol:
Peers: [
tls://xx.xx.xx.xx:xxxx
]
Takož, zručno vkazaty nazvu dlja interfejsu Yggdrasil - ščob potim ne plutaty jogo napryklad z VPN:
IfName: ygg0
Pislja cjogo možna perezapustyty servis, ščob zastosuvaty zminy:
systemctl restart yggdrasil
Jakščo vse zrobleno pravyl'no, možna sprobuvaty vidkryty URL z katalogu servisiv:
Dodatkovo
Pereviryty najavnist' novogo interfejsu možna komandoju:
ifconfig
Otrymaty vlasnu adresu:
yggdrasilctl getself
Možna stvorjuvaty masky pidmerež dlja okremyh servisiv - vebsajty, pošta, ta inše:
ifconfig lo inet6 add 3xx:xxxx:xxxx:xxxx::xx
- de 3xx:xxxx:xxxx:xxxx - adresa z yggdrasilctl getself
Jakščo pidključennja vidbuvajet'sja čerez vlasnyj publičnyj vuzol, na njomu vidkryvajet'sja dovil'nyj port.
U razi neobhidnosti obmežennja dostupu dlja nevidomyh dynamičnyh adres, počynajučy z versiji 0.5.0 možna vkazuvaty parol' v parametri password:
- tls://[::]:12345?password=123456abcdef - server
- tls://a.b.c.d:12345?password=123456abcdef - klijent
Počatkivcjam važlyvo vstanovyty merežnyj ekran, napryklad ufw dlja iptables, inakše taki služby jak pryntery abo lokal'ni veb-servery dlja rozrobky (ščo standartno prosluhovujut' 0.0.0.0) možut' staty dostupnymy dlja inšyh učasnykiv lokal'noji mereži.
Z cijeji točky zoru, bude zručnym organizacija okremogo routeru napryklad na bazi OpenWRT.
Važlyvo rozumity, ščo Yggdrasil ne maje na meti zahyst vid identyfikaciji korystuvača v mereži, porivnjujučy z anonimajzeramy Tor čy I2P.
Inodi, može vykorystovuvatys' jak dodatkovyj kanal, ale pohodžennja jogo paketiv može buty vstanovleno, jakščo ne vykorystovujut'sja taki zasoby maskuvannja trafiku jak Shadowsocks ta inši.
Yggdrasil - perš za vse al'ternatyvnyj maršrutyzator, jakyj dozvoljaje avtomatyčno stvorjuvaty permanentni IPv6 adresy v seredovyšči IPv4 ta je korysnym instrumentom dlja švydkogo rozgortannja infrastruktury lokal'nyh drotovyh, lazernyh ta radio merež.