сообщение об окончании посева или пиявки трекеру Libtorrent - PullRequest
0 голосов
/ 21 мая 2011

Из того, что я знаю, при посылке или загрузке торрента ваш IP-адрес находится на трекере, и он остается там в течение нескольких часов или дней. Как вручную сообщить моему трекеру с помощью Libtorrent, что я больше не буду подключаться к трекеруи это должно забыть мой IP, поскольку я не сею или пиявку нор.Будут признательны любые биты кода или советы, в настоящее время я использую привязку Python, предоставляемую rasterbar, но я тоже в порядке с кодом C ++.

Ответы [ 2 ]

2 голосов
/ 21 мая 2011

Трекеры - это просто HTTP-сервисы (хотя и плохо спроектированные).См. Протокол BitTorrent Tracker , в частности, параметр запроса event.В Python вы можете использовать urllib.

1 голос
/ 23 мая 2011

libtorrent автоматически делает это при остановке торрента или остановке сеанса.Если это не помогло, вы можете увеличить время ожидания трекера при выключении.Это увеличит задержку выключения, но даст еще больше перегруженных трекеров.Смотри session_settings::stop_tracker_timeout.По умолчанию это 5 секунд, но иногда трекеры реагируют намного дольше, чем это, до 30 секунд.

Трекеры обычно тайм-ауты примерно через час, и вам необходимо каждые 30 минут повторно объявлятьостаться в живых.

Если вы пытаетесь просто отправить остановленное событие на трекеры, используя отдельный клиент bittorrent (в этом случае, если любой клиент, который вы используете, не может отправить остановленособытиям для трекеров), это может быть немного менее надежно.

Вы должны включить инфо-хэш (т. е. уникальный идентификатор для торрента), ваш ключ , который клиент генерирует при запуске, peer-id (который также генерируется клиентом) и статистику передачи, в запросе трекера.

Вы можете избежать опускания статистики, но если выне знаю инфо-хэш или ключ клиента, а в некоторых случаях peer-id, трекер не сможет выяснить, что ваш запрос действительно ссылается на запрос трекера вашего клиентаuest, и он не удалит ваш IP.

На практике по большей части вы можете заставить его работать, просто , зная URL-адрес хэша информации и трекера.Вы можете получить информационный хеш, загрузив файл .torrent, извлекая из него URL-адреса информационного хеша и трекера.

...