Гром в раю или Почему не следует пользоваться FlylinkDC++

Но дружбы нет и той меж нами.
Все предрассудки истребя,
Мы почитаем всех нулями,
А единицами — себя.
Мы все глядим в Наполеоны;
Двуногих тварей миллионы
Для нас орудие одно…

FlylinkDC++ — свободный и открытый клиент файлообменных сетей Direct Connect и Bittorrent. Является производным клиентом от DC++ и базируется на исходном коде ApexDC++ 0.4.0 (до ветки r4xx включительно) и StrongDC++ 2.42 (начиная с ветки r5xx). Поддержка BitTorrent реализована с использованием библиотеки libtorrent.


Предисловие, оно же эпилог


Статья написана как развёрнутый ответ на комментарий. Разработчик FlylinkDC++ был проинформирован о наличии всех нижеописанных явлений и подтвердил, что все они (кроме причины №2, но это неточно) привнесены в клиент намеренно.

Итак, причина №1


У FlylinkDC++ есть серверная часть, откуда подгружается часть его настроек, кои недоступны для редактирования.

Часть этих настроек отвечает за подмену адресов хабов, с которыми соединяется пользователь.

Подмена осуществляется, во-первых, на лету при использовании Ctrl+Q, и, во-вторых, в списке Избранных. То есть пишете один адрес, получаете другой.

Также зафиксировано удалённое изменение списка Избранных хабов после обновления клиента. Конкретно — для автоконнекта туда был добавлен вот этот хаб. Потом ещё один. И ещё.

z-jdtlm9cj4bbsnclhe0wobi1mw.png
Так добавление в Избранные через удалённый конфиг влияет на посещаемость хаба

Это делается на коммерческой основе, сто́ит 30 евро в месяц за хаб.

promo_hubs_plus="dchub://piter.feardc.net,dchub://dc.ozerki.pro,dchub://motivation.pp.ua"


Иными словами, фактически имеет место блокировка хабов на стороне клиента (?!) и перевод (не путать с редиректом) пользователей с одного ресурса на другой.

Причина №2


FlylinkDC++ имеет массовую проблему с отдачей файллиста при ненулевой шаре; он скачивается пустым.

kx7am8p0rohdonxvmnjh5fbqjai.png

Причина №3


FlylinkDC++ приспособлен для установки двух и более соединений с одним и тем же хабом, увеличивая этим нагрузку на сервер и самого себя и подделывая статистику ресурса. Такие ситуации зачастую возникают по причине №1.

irxyvmxnywqy20_5b3jgpfxypnc.png
«Клоны» на этом скриншоте — отнюдь не ошибки хаба вследствие некорректно закрытых соединений.

По моим подсчётам, дубль-коннекты FlylinkDC++ составляют от 10 до 40 (!) процентов пользователей трёх крупнейших DC хабов.

c64uvudamdg4wbiyabezscics-s.png
Дубль-коннекты выделены красным

Причина №4


По умолчанию клиент запрещает безопасные соединения (!) и разрешает обычные, что фактически делает его паразитом на ADCs хабах.

Причина №5


FlylinkDC++ не позволяет использовать списки хабов, отличные от зашитых в нём с помощью удалённого конфига.

Бонус


Отписка в лучших традициях РКН.

© Habrahabr.ru