Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Добавление ретрекеров.
Re-Tracker | Система локальных ретрекеров | Ретрекер > РеТрекер > Обсуждение
Страницы: 1, 2
FreeM@N
Добавил.
random_by
В каком формате нужно писать адрес ретрекера? Все варианту перепробовал, но все время пишет ошибку "Некорректный формат адреса ретрекера".
FreeM@N
В формате http://you-re-tracker.ru:2710/announce
unxed
Цитата
С возвращением, последний раз вы были здесь: 7.1.2012, 9:11

^ Ничего себе!

Привет, друзья! Меня зовут Ваня Сорокин, я тот самый unxed, который изобрел ретрекеры. Подумал, и, похоже, изобрёл их второй раз.

Идея такая: модифицируем код клиента, чтобы он, вместе с обычным анонсом на трекер, слал ещё один точно такой же анонс в DHT, только вместо инфохэша использовал
ХЭШ(ХЭШ_ИСХОДНОГО_ТОРРЕНТА + ВНЕШНИЙ_IP_КЛИЕНТА)
А в качестве IP указывал провайдерский IP из локального диапазона. Естественно, если провайдерский IP — внешний, это всё делать не нужно.

Понимаете, да? Если внешний айпи у двух клиентов совпадает, то они, вероятно, сидят из одного NAT'а, и смогут через обычную DHT, без всяких retracker.local и патчей узнавать локальные IP друг друга.

Как вам? Как по мне, выглядит красиво. И если DHT позволяет указывать в качестве своего IP что угодно — должно сработать. Но нужна поддержка в клиентах. Я мог бы попробовать в qBittorrent добавить такое, например.

UPD: Смотрю в исходники libtorrent-rasterbar, файл src/kademlia/dht_storage.cpp
Код
        void announce_peer(sha1_hash const& info_hash
            , tcp::endpoint const& endp
            , string_view name, bool const seed) override

— выходит, в DHT действительно можно сохранить произвольную пару IP:port для некоего хэша. То есть концепция рабочая.

UPD#2: Как определять провайдерский IP из локального диапазона, если клиент за роутером? По UPNP. Если UPNP выключен или не отвечает, использовать локальный адрес устройства.

UPD#3: Возможное решение для самого частого кейса: Windows + uTorrent. Приложение, висит в трее, работает ретрекером на локалхосте, данные хранит/получает из DHT, как описано выше. Также следит, чтобы в hosts retracker.local смотрел на localhost (можно использовать 127.0.0.14 или что-нибудь такое, чтоб не мешать пользовательским HTTP серверам), если нужной записи нет, даёт создать одной кнопкой. И ещё пусть проверяет, что uPNP на роутере работает (если нет, рассказывает, как настроить).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
пїЅпїЅпїЅпїЅпїЅ IP.Board © 2001-2024 IPS, Inc.