The most popular #XMPP server #ejabberd can now be extended with the #elixir programming language. Here is the documentation:
https://docs.ejabberd.im/developer/extending-ejabberd/elixir/
#pleroma ActivityPub server is also written in Elixir
Yggdrasil is a general purpose decentralized L3 network that works even without the Internet connection
IPFS is a decentralized content delivery network, but they can work together - IPFS on top of Yggdrasil
Вышел новый релиз официального приложения #Yggdrasil с настройкой DNS и другими крутыми изменениями!
Основано на 0.4.6.
(Я тоже приложил обе руки к новым фитчам и фиксам.)
https://github.com/yggdrasil-network/yggdrasil-android/releases/tag/v0.1-009
Если кто не знает что такое Yggdrasil, то можете почитать вот тут: yggdrasil.link
Кстати, теперь я официально один из разработчиков этого приложения.
🔥 MASSIVE UPDATE: Yggdrasil mesh networking app for Android phones
A lot of common issues were fixed in this release
https://github.com/yggdrasil-network/yggdrasil-android/releases/tag/v0.1-009
Direct .apk link:
@timurka@shitpost.poridge.club @anon
Paste URL of the post to the search bar :^)
⚠️🤔 Что дальше?
Давно сюда не постил. Ситуация совсем паршивая. Много слов по этому поводу писать не вижу смысла, ибо всем похуй.
Все это время я продолжал ставить чудовищные эксперименты над децентрализованными системами, но настроения шитпостить не было.
Долго думал и решил, что show must go on. Но теперь тут будет мало русскоязычных постов, буду постить в основном на инглише.
Не потому, что я принял сторону какого-то из государств, для меня они все одинаковы.
Мне так гораздо проще, + расширится охват аудитории, ведь большинство околоайтишников в мире умеют читать технические тексты на английском.
Если всякие левые челики отвалятся, туда им и дорога. Здесь в любом случае супер нишевый контент, только для избранных 😎
#Yggdrasil #development #experimental
**netstack ветка в Yggdrasil**
https://github.com/yggdrasil-network/yggdrasil-go/commits/netstack
Разработчик Yggdrasil Нил Александр создал экспериментальную netstack ветку в репозитории.
Основной ее смысл - отказ от использования туннельного интерфейса в системе. Вместо этого, весь сетевой стек реализован внутри самой программы.
Для доступа к внутрисетевым ресурсам используется Socks5 прокси, есть так же возможность расшаривать отдельные TCP порты со своего хоста в Yggdrasil.
Преимущества такого подхода:
- Программа работает полностью в userspace, меньше переключений контекста и выше производительность
- Не требуется повышенных привелегий
- В сеть выставляются только указанные порты, а не весь хост, что лучше для безопасности
В netstack поддерживается специальная доменная система в формате `<ПУБЛИЧНЫЙ_КЛЮЧ>.pk.ygg`.
Например, можно зайти на сайт HowToYgg через прокси по этому URL `http://000000002ae375e65f5470ee29eb563a0ada764c7a3f1efaa5f5a4af91dad1cb.pk.ygg/`
Собирается эта экспериментальная ветка так:
`git fetch origin netstack && git checkout netstack`
`go build -o yggstack cmd/yggstack/main.go`
Для настроек socks-прокси и расшаривания TCP портов используются ключи командной строки:
`./yggstack -useconffile=/etc/yggdrasil.conf -socks :1080 -exposetcp 80:127.0.0.1:8080`
@Revertron Ага, сейчас подробнее распишу)
#Yggdrasil #Python #development
https://github.com/zhoreeq/yctl
Обновлена библиотека для взаимодействия с Yggdrasil нодой на Python. Установить ее теперь можно просто командой `pip install yctl`.
Из нового, в API появились следующие методы:
`async def get_paths(self) -> Dict:`
`async def debug_remote_get_self(self, key: str) -> Dict:`
`async def debug_remote_get_peers(self, key: str) -> Dict:`
`async def debug_remote_get_dht(self, key: str) -> Dict:`
С их помощью можно построить полную карту сети со всеми связями между узлами и видеть реальные пути прохождения трафика.
🚀 Обновление децентрализованной mesh-сети Yggdrasil Network v0.4.3
Yggdrasil Network — децентрализованная IPv6 сеть с локальным обнаружением пиров, автоматическим E2E шифрованием, автоназначением IP адресов и DHT-роутингом.
https://github.com/yggdrasil-network/yggdrasil-go/releases/tag/v0.4.3
Альтернативный клиент Popura тоже обновлен
https://github.com/popura-network/Popura/releases/tag/v0.4.3%2Bpopura1
**Как использовать беспроводные peer to peer соединения?**
Для P2P соединений по WiFi HyperModem использует стандарт [802.11s](https://wireless.wiki.kernel.org/en/developers/documentation/ieee80211/802.11s). Поддержка этого стандарта зависит от драйвера WiFi устройства, см. столбец mesh [здесь](https://wireless.wiki.kernel.org/en/users/drivers). Хорошо подходят устройства с драйверами ath9k и mt76.
Для некоторых устройств беспроводной P2P уже настроен в сборке, на других необходимо добавить сеть типа 802.11s в веб интерфейсе.
Параметры сети: mesh_id "meshnet", 11 канал, без шифрования, "Forward mesh peer traffic" выключено.
**На какие устройства можно поставить систему HyperModem?**
Домашние роутеры, одноплатные компьютеры (Raspberry Pi), старые ноутбуки и так далее.
Критерии поддержки:
- Устройство [поддерживается OpenWrt](https://openwrt.org/toh/start)
- Для роутеров - минимум 16МБ флеш памяти и 64МБ RAM
- Желательно, open source драйвера для WiFi чипа (ath9k, mt76)
**Как установить?**
Скачать готовый образ на [странице релизов](https://github.com/popura-network/HyperModem/releases) или [собрать собственный из исходников](https://github.com/popura-network/HyperModem#how-to-build).
Гайды по установке системы на конкретное устройство находятся на сайте OpenWrt. Например, инструкции для роутера [Asus RT-AC51U](https://openwrt.org/toh/asus/rt-ac51u), [Raspbery Pi](https://openwrt.org/toh/raspberry_pi_foundation/raspberry_pi), [x86 компьютеров](https://openwrt.org/docs/guide-user/installation/openwrt_x86).
Готовые образы:
[Raspberry Pi](https://github.com/popura-network/HyperModem/releases/download/hypermodem-v2.0.1/openwrt-21.02.1-bcm27xx-bcm2708-rpi-ext4-factory.img.gz)
[Raspberry Pi 2](https://github.com/popura-network/HyperModem/releases/download/hypermodem-v2.0.1/openwrt-21.02.1-bcm27xx-bcm2709-rpi-2-ext4-factory.img.gz)
[Raspberry Pi 3](https://github.com/popura-network/HyperModem/releases/download/hypermodem-v2.0.1/openwrt-21.02.1-bcm27xx-bcm2710-rpi-3-ext4-factory.img.gz)
[Raspberry Pi 4](https://github.com/popura-network/HyperModem/releases/download/hypermodem-v2.0.1/openwrt-21.02.1-bcm27xx-bcm2711-rpi-4-ext4-factory.img.gz)
[Orange Pi Zero](https://github.com/popura-network/HyperModem/releases/download/hypermodem-v2.0.1/openwrt-21.02.1-sunxi-cortexa7-xunlong_orangepi-zero-ext4-sdcard.img.gz)
[Asus RT-AC51U](https://github.com/popura-network/HyperModem/releases/download/hypermodem-v2.0.1/openwrt-21.02.1-ramips-mt7620-asus_rt-ac51u-squashfs-sysupgrade.bin)
[x86_64 компьютеры](https://github.com/popura-network/HyperModem/releases/download/hypermodem-v2.0.1/openwrt-21.02.1-x86-64-generic-ext4-combined.img.gz)
**HyperModem: Девайс для доступа в децентрализованный peer to peer интернет будущего**
Интернет в наше время излишне централизован и держится на костылях. Не всех это устраивает. Для технологии 1970-х годов он еще неплохо справляется, но зачем нам в 2022 году такие вещи, как централизованные интернет-провайдеры, BGP, IPv4, TLS? Можно ведь сделать лучше!
[Yggdrasil Network](https://ru.wikipedia.org/wiki/Yggdrasil) - децентрализованная самоорганизующаяся сетевая инфраструктура. Каждый узел этой сети равно участвует в маршрутизации и расширяет ее охват. Все соединения защищены сквозным шифрованием, значение IPv6 адреса узла вычисляется из его криптоключей. Практически любые пользовательские приложения могут использовать Yggdrasil в качестве среды передачи данных вместо legacy интернета. Как же сделать эту новую технологию более доступной для всех?
[HyperModem](
https://github.com/popura-network/HyperModem) позволяет быстро создавать Yggdrasil узлы из обычных бытовых устройств. Система основана на открытом исходном коде проекта OpenWrt (Open Wireless Router). По сути, это легковесная Linux сборка с Yggdrasil из коробки, которую, при необходимости, легко допиливать под любые свои нужды.