2 Способа накрутить рейтинг на torrent трекере

Всем известно - рейтинг на трекере - это не шутки. Я, к примеру, очень ответственно к этому отношусь. На иоем любимом трекере - torrents.ru, у меня никогда рейтинг не падал ниже 2х (это еще и из-за того, что если рейтинг ниже 2х, то на форум не всегда можно влезть). Так вот, набивать его проном мне уже парядком надоело (хотя… ;) ) и под руку подвернулась статейка одного моего знакомого из Питера - Менковича Никиты. Ему за статью благодарности, а нам читать - да на ус мотать.

В данной статья сведены во едино два варианта самонакрутки рейтинга на торрентах без непосредственной раздачи. Первый прост, второй по сложнее. Злоупотреблять таким не советую - могут возникнуть проблемы в виде пожизненного бана! Итак, понеслась…

Первый, простой, способ

Нам понадобится типичный сниффер, например wireshark, он есть в любом репозитарии.

Запускать его нужно от рута, чтобы был доступ к сканированию eth0. Вот интерфейс главного окна: wireshark-main Чтобы настроить фильтрацию того, что нам необходимо получить, выбираем Filter-HTTP: wireshark-filter Затем, выбираем слушаемый интерфейс Capture - Options: wireshark-start

Затем включаем торрент клиент, и стартуем одну закачку: torrent-start После этого в wireshark смотрим, какой запрос посылает программа трекеру:

wireshark-announce Правой кнопкой нажимаем на запрос Copy-Bytes(Printable Text Only), у меня запрос следующий:

GET /announce.php?uk=x1dgvKvN7D&&peer_id=-KT2250-qW2uCN2o1Ac6&port=6881&uploaded=0&downloaded=0&left=608632832&compact=1&numwant=100&key=482586564&event=started&info_hash=uj%08%0f%e6%eb%17%0b%19%08l-%ef%b4%8e%5e%b0%a1%cc%b2 HTTP/1.1 User-Agent: uTorrent/1770 Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Accept-Encoding: x-gzip, x-deflate, gzip, deflate Host: bt.torrents.ru Connection: Keep-Alive

Это то, что отсылает при старте торрента, сохраняем его под именем start. Ждем ~15 минут и останавливаем. Тем же образом получаем запрос посылаемый трекеру при остановке:

GET /announce.php?uk=x1dgvKvN7D&&peer_id=-KT2250-qW2uCN2o1Ac6&port=6881&uploaded=1248764894&downloaded=0&left=0&compact=1&numwant=0&key=482586564&event=stopped&info_hash=uj%08%0f%e6%eb%17%0b%19%08l-%ef%b4%8e%5e%b0%a1%cc%b2 HTTP/1.1 User-Agent: uTorrent/1770 Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Accept-Encoding: x-gzip, x-deflate, gzip, deflate Host: bt.torrents.ru Connection: Keep-Alive

Этот запрос сохраняем под именем stop. Строчка запроса, которая отвечает за отправку информации о количестве отданной информации uploaded=1248764894, то есть примерно 1,1 Гигабайта было отдано за 15 минут. Я рекомендую каждый час накручивать не больше 100-150Мб, чтобы Вас не забанили на трекере.

Эти запросы можно элементарно отсылать из консоли:

cat start | telnet bt.torrents.ru 80

и через 15 минут:

cat stop | telnet bt.torrents.ru 80

где bt.torrents.ru Host из запроса.

Можно таким образом увеличивать рейтинг отданных данных на трекере. В принципе такую задачу можно повесить на крон, чтобы регулярно отсылать информацию об отданных 22Мб, к примеру.

Способ, сложный, второй

рассмотрим работу с утилитой tcpdump, которая позволит нам получить запрос такого же типа, как и в той статье. В итоге мы будем иметь готовый скрипт, в котором достаточно будет запустить торрент-клиент, указать сколько мегабайт рейтинга хотите получать после каждой отработки скрипта Запускаем tcpdump, чтобы получить нужные пакеты:

sudo tcpdump -i eth0 -A -q -s 1024 'port 80 and host bt.torrents.ru' > dump.txt

Для Вашего трекера port и host могут отличаться. Давайте подробно рассмотрим, что же это мы такое запустили: -i eth0 - этот ключ указывает на прослушиваемый сетевой интерфейс. -A - этот ключ отвечает за вывод содержимого пакета в ASCII. -q - отвечает за сокращённый вывод заголовка пакета. -s 1024 - указывает какой максимальный размер заголовка будет сохраняться.

В итоге в файле dump.txt мы получим всё текущее сообщение между программой и трекером, однако нам все тексты запросов совершенно не нужны, нам нужен один запрос на базе которого мы будем имитировать отправление данных трекеру. Поэтому нам необходимо отфильровать лишь один заголовок:

grep GET -A 5 ./dump.txt|head -n 6|sed 's/^.*GET/GET/g' > dump2.txt

Добавляем в конец файла Connection: Keep-Alive, чтобы сервер оставался готовым к приему второго пакета:

echo Connection: Keep-Alive >> dump2.txt

Поскольку запрос не всегда получается единообразным, то будем делать подготовку двух запросов - стартового и конечного. Стартовый запрос из полученного текста делаем так:

cat dump2.txt | sed s/stopped/started/g > start.txt

То есть, если встречается в полученном тексте stopped, то есть сигнал остановки работы - меняем на started. Для конечного запроса делаем:

cat dump2.txt | sed s/started/stopped/g | sed s/uploaded=0/uploaded=20971520/g > stop.txt

Где заменяем 20971520 на нужное вам число байт в рейтинг. Всё это можно увязать один скрипт, тут я Вам пожалуй ничего советовать не буду каждый делает так, как ему удобнее. Можно например запускать tcpdump с ограничением на количество пакетов. Полностью автоматизированный скрипт тоже можно сделать, читайте man bash.