💾 Archived View for betahowto.duckdns.org › yggdrasil:yggdrasil_as_socks_proxy captured on 2024-05-10 at 11:14:32. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2024-03-21)
-=-=-=-=-=-=-
| Описываемая ниже ветка netstack ( https://github.com/yggdrasil-network/yggdrasil-go/tree/netstack ) не совместима с Yggdrasil ( gemini://betahowto.duckdns.org/yggdrasil:yggdrasil ) v. 0.5 и разработчики не планируют дальнейшую её поддержку.
Скрин переписки в чате Yggdrasil ( https://matrix.to/#/#yggdrasil:matrix.org ) от 21.05.2023:
Альтернатива: отдельный проект yggstack ( https://github.com/yggdrasil-network/yggstack ) (работает аналогично).|
Разработчикам чате ( gemini://betahowto.duckdns.org/yggdrasil:Yggdrasil]] в [[https://matrix.to/#/#yggdrasil:matrix.org ) периодически задают вопрос о возможности запуска Yggdrasil без создания tun-интерфейса. В качестве аргумента за такой подход приводят значительное упрощение встраивания Yggdrasil в другие проекты, например, в браузер или даже в web-приложение...
И вот, в качестве эксперимента, один из разработчиков Yggdrasil (neilalexander ( https://github.com/neilalexander )) создал ветку проекта, в которой не используется tun-интерфейс и реализован стек сетевых протоколов, который позволяет использовать Yggdrasil в качестве socks5-прокси.
Отличительные особенности такого подхода:
Кроме описанного выше, в ветке netstack реализована встроенная система DNS. C помощью этой системы можно получить доступ к ресурсам по доменному имени вида .pk.ygg.
Для примера, адрес [[this>|этой wiki]] будет выглядеть так: http://000000002ae375e65f5470ee29eb563a0ada764c7a3f1efaa5f5a4af91dad1cb.pk.ygg/ (доступно через socks-прокси ветки netstack).
Готовых бинарников нет, приложение собирается из исходников.
Примечание: для сборки необходим go-lang. Читайте об его установке: ( gemini://betahowto.duckdns.org/go:go_installation ).
Непосредственно сборка:
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
Socks-прокси будет ожидать соединение на порту 1080 (указывается в браузере); из вне становится доступным порт 80, который пробрасывается на порт 8080 localhost (предполагается, на localhost:8080 будет работать web-сервер).
Ветка netstack (EN): https://github.com/yggdrasil-network/yggdrasil-go/tree/netstack
Канал telegram Popura (RU): https://t.me/PopuraChan/137
https://github.com/yggdrasil-network/yggdrasil-go/tree/netstack
gemini://betahowto.duckdns.org/yggdrasil:yggdrasil
https://matrix.to/#/#yggdrasil:matrix.org
https://github.com/yggdrasil-network/yggstack
gemini://betahowto.duckdns.org/yggdrasil:Yggdrasil]]
https://github.com/neilalexander
http://000000002ae375e65f5470ee29eb563a0ada764c7a3f1efaa5f5a4af91dad1cb.pk.ygg/
gemini://betahowto.duckdns.org/go:go_installation