mirror of
https://codeberg.org/postscriptum/gemlog.git
synced 2026-02-19 06:22:41 +00:00
61 lines
No EOL
9.1 KiB
Text
61 lines
No EOL
9.1 KiB
Text
# Згортаю інстанс βtracker
|
||
|
||
Слідом за форумом спільноти, закриваю й сервіс βtracker.
|
||
|
||
Анонс концепції та реалізація - коротко були описані тут:
|
||
=> btracker-bittorrent-tracker-in-rust.gmi βtracker - BitTorrent агрегатор на базі Rust
|
||
|
||
Рішення про закриття не є спонтанним, але усвідомленим в процесі експерименту створення агрегаційного каталогу з нахилом на автоматизацію та відсутність модерації зокрема та міркувань стосовно його подальших перспектив у процесі розробки та адміністрування.
|
||
|
||
## Морально-етична та юридична складові
|
||
|
||
Не дивлячись на те, що концепція "автоматики" виявилась на диво успішною, останній нюанс з модерацією почав викликати у мене сумніви: адже рано чи пізно хтось почне публікувати відвертий, провокативний (для когось або для мене самого) вміст, а я не хочу тому сприяти і брати на себе роль модератора у світі, де "добро" і "зло" - поняття відносні та для кожного свої.
|
||
|
||
У цьому плані, навіть анонімні ресурси приховують відвертий вміст через очевидні юридичні ризики: іпсайти (eepsite) не є панацеєю, завжди існує ймовірність помилки, на кожного розумного - рано чи пізно знайдеться розумніший. Отже, просто "закрити очі" не вийде, адже дані зберігаються у вас.
|
||
|
||
Вектором для розвитку свободи волевиявлення, я бачу не централізовані сервіси, якими є глобальні каталоги (та у даному випадку - агрегатор), але окремі, без "критичної маси". Таким ресурсом може бути легальний для своєї громади каталог тематичного контенту, персональний / self-hosted блог, або D-індекс:
|
||
=> kevacoin-decentralized-database-in-blockchain.gmi KevaCoin - децентралізована база даних в блокчейн
|
||
|
||
Ще одним, юридично "чистим" рішенням, може бути публікація трекером дампу інфо-хешів. Зокрема, засобами вже наявної в рамках комплексу βtracker реалізації трекера Aquatic:
|
||
=> https://github.com/yggverse/aquatic/tree/info-hash-api info-hash-api
|
||
Таким чином, користувачі можуть розгортати локальні, незалежні інстанси βtracker на основі обраних ними трекерів та їх мереж.
|
||
|
||
## Відсутність попиту
|
||
|
||
Саме цей інстанс працював для мережі Yggdrasil, що як мені здається поступово втрачає свою популярність в сегменті "живого" контенту. І не дарма: як мені стало очевидним згодом, оверлейні мережі - це низькорівневий засіб комутації пристроїв, а не підґрунтя для соціальних платформ.
|
||
|
||
Безумовно, Yggdrasil зручний для передачі файлів засобами BitTorrent, оскільки надає сотню "безкоштовних VPN" а звідти - певні засоби маскування трафіку. Утім, я не впевнений, що ця мережа потягне поточний канал Інтернет при мінімальній цікавості натовпу до такого способу. Отже, доведеться шукати іншу, менш завантажену мережу, а звідти - постає питання абсолютної не сумісності клієнтських застосунків дюал-стек IPv4/IPv6 щодо мульти-стек IPv6.
|
||
|
||
Проблем тут багато, і більшість з них - через намагання використовувати низькорівневий роутинг для високорівневих задач. В контексті торентів, мені навіть більше імпонує варіант I2P, роутер якого може працювати з будь якою мережею; при тому сама технологія BitTorrent тут дійсно виправдана за рахунок приватного розгону швидкості, в плані конкуренції з сучасним оптичним каналом та онлайн-кінотеатрами.
|
||
|
||
## Поточний статус
|
||
|
||
Торент-трекер все ще працює і я не планую його вимикати. Звичайний сервер UDP - не кешує сумнівний контент безпосередньо, лише хеші. Тому він працюватиме настільки довго, наскільки в мене вистачить можливостей його тримати на волонтерських засадах.
|
||
|
||
## Плани з подальшої розробки
|
||
|
||
Стосовно кодової бази - в осяжній перспективі, актуальними є наступні моменти:
|
||
|
||
### Модерація
|
||
|
||
Так як рано чи пізно перед власником інстансу βtracker постане питання модерації, я вже встиг підготуватись для себе, створивши відповідний PR#497:
|
||
=> https://github.com/ikatson/rqbit/pull/497
|
||
* ця гілка вже змержена в main апстріму rqbit
|
||
* варто зауважити, що опції (аргументи) librqbit ще не інтегровані в командний рядок aquatic-crawler
|
||
|
||
Якщо коротко, то я бачу реалізацію в певній "реєстрації" перевірених пірів через форму на сайті або PR в певний реєстр. Таким чином, не перевірені піри просто не будуть резольвитись і потрапляти в каталог, а при зловживанні правилами - можуть бути легко виключені з білого списку. Це моя особиста концепція само-захисту як провайдера, поки не імплементована через малу кількість користувачів та відсутність інцидентів, у вас вона може бути іншою.
|
||
|
||
Так як цей агрегатор працював виключно в мережі Yggdrasil, мені ще якось підказали варіант з майнингом адрес. Тобто можна вимагати від користувачів певних витрат ресурсу CPU для створення "складних" префіксів 0200::/7 які можна буде так само банити у разі порушення правил, а нові - буде важко відтворювати у короткий термін. Це сценарій для супер-популярного трекера, а не локального на "два з половиною" користувача.
|
||
|
||
### Стабільний реліз
|
||
|
||
Заплановано стабілізацію компонента aquatic-crawler на crates.io: автор залежності librqbit довго телиться зі стабільним релізом дев'ятої версії, хоча версія aquatic-crawler (v0.2) вже давно стабільна в репозиторії, а на crates - досі вісить v0.1:
|
||
=> https://crates.io/crates/aquatic-crawler
|
||
|
||
## Do It Yourself
|
||
|
||
Якщо хтось бажає створити подібний сервіс - будь ласка: вихідний код усіх його компонентів відкритий і доступний на GitHub за ліцензією MIT:
|
||
|
||
=> https://github.com/yggverse/btracker btracker - Веб-каталог
|
||
=> https://github.com/yggverse/btracker-gemini btracker-gemini - Імплементація каталогу для Gemini
|
||
=> https://github.com/yggverse/aquatic-crawler aquatic-crawler - Кравлер та резольвер бінарних інфо-хешів |