Retracker.local
Содержание
Ретрекер
В связи с тем, что теперь добавляется ретрекер http://retracker.local/announce, здесь приводится несколько способов по его настройке.
<spoiler text="Подробности от admin"> Сия информация предназначена и может быть полезна только для провайдеров. Обычный пользователь никак не может использовать ничего из того что написано ниже, и от него не требуется никаких дополнительных действий, для того чтобы использовать нижеописанные возможности.
Что такое ретрекер, зачем он нужен и как работает можно прочитать здесь.
Далее, самое важное:
C 18 сентября 2009 года, все торренты с rutracker.org идут с уже прописанным ретрекером по адресу http://retracker.local/announce.
Таким образом, чтобы запустить в свой сети ретрекер, вы должны проделать следующие операции:
0. Быть провайдером и, соответственно, иметь возможность управления ДНС зонами внутри своей сети (сетей).
1. Скачать кучку кода по адресу http://rutracker.org/retracker.zip и поставить на одном своих серверов, который будет ретрекером.
Технических требований особых нет - гигагерцовый селерон потянет ретрекер на сеть из 50-100 тыс пользователей.
Адрес анноунсера ретрекера http://retracker.local/announсe - будьте внимательны!
2. Поднять внутри своей сети на днс-сервере зону retracker.local, которая будет указывать на собранный в п.1 сервер.
2а. Для тех, кто в пиринге, поднять общую для всех сетей пиринга внутреннюю зону, которая будет указывать на единый для всех сервер.
3. Убедиться, что все работает, - внутри сети у всех клиентов резолвится этот адрес, и запросы на него обрабатываются ретрекером.
4. С технической стороны весь процесс настройки описан тут -> http://wiki.rutracker.org/Retracker.local
Теперь некоторые замечания по сервису:
1. Retracker.local прописывается только в российский сегмент интернета. Сделано это потому, что зарубежным товарищам вряд ли придет в голову делать ретрекеры для rutracker.org.
Впрочем, если вы провайдер, и всё-таки хотите сделать ретрекер, то просто напишите ЛС юзернейму retracker и в свободной форме попросите включить в список для выдачи ваши диапазоны IP-адресов.
Это касается в основном провайдеров из ближнего зарубежья - Украины, Казахстана, Белоруссии, Прибалтики и т.п.
2. Те ретрекеры, что уже были прописаны и настроены, продолжают работать в том же духе. Однако их операторам все же рекомендуется поднять стандартный для всех retracker.local и ориентироваться на него в дальнейшем, как на более универсальный. Соответственно, торренты для них идут с 2 ретрекерами, тем что был, и retracker.local, просто резолвятся они на один и тот же сервер, что ни на что не влияет. НЕ РАБОТАЮТ, ИСПОЛЬЗУЙТЕ retracker.local
3. Новых ретрекеров в явном виде мы больше не прописываем, однако можем сделать исключение в тех случаях, когда провайдер найдет вескую аргументацию для этого (в чем есть сильные сомнения). Не делаем исключений, используйте retracker.local
Все заявки по ретрекерам - юзеру retracker, в личку. И опять же, ретрекеров для провайдером с количеством пользователей менее 20 000 не прописываем, это лишняя нагрузка на нас, с нулевой, практически, отдачей для пользователей !
Имейте ввиду, что retracker.local - это куда более универсальный путь, чем прописывание вашего персонального адреса.
Дело в том, что он рано или поздно поменяется, и у юзеров "на руках" останутся миллионы торрентов с несуществующим адресом ретрекера.
А это ни нам, ни вам, ни им не нужно. А ретрекер.локал может поднять любой провайдер, и это будет работать.
P.S. Если у вас пиринг, однако два провайдера не могут/не хотят договорится об трансфере зон - делайте каждый свой retracker.local с обменом таблиц пирами между собой. Готовых решений нет, но это совсем несложно.
P.P.S.
Цитата:
Цитата:
Ну очень интересно посмотреть на провайдера, который использует в своих сетях mDNS.
А если у вас офис или локалка из 2 - 2000 машин - вам ретрекер не нужен. Вообще.
P.P.P.S Похоже, что retracker.local стали внедрять и на других трекерах. Таким образом, это универсальный инструмент для ретрекинга.
</spoiler>
Настройка ретрекера
Настройка через код ретрекера rutracker.org
Это PHP-скрипт, который можно взять здесь http://rutracker.org/retracker.zip. Настройка его проста, но есть одна особенность. По стандарту[1] адрес ретрекера оканчивается на /announce, поэтому для Apache нужно прописать некоторые правила в .htaccess:
Redirect
RedirectPermanent /announce /announce.php
Rewrite
Этот вариант лучше предыдущего, потому что он делает внутренний редирект, то есть не идет внешнего перенаправления клиента (301)
RewriteEngine On RewriteBase / RewriteRule ^announce/?$ /announce.php [L]
Multiviews
Также можно включить опцию apache:
Options +Multiviews
Без правки .htaccess
Создаем директорию announce, в которую кладем announce.php и config.php из архива, и затем переименовываем announce.php в index.php
Rewrite для Nginx
location ~* ^/announce$ { rewrite ^/ /announce.php permanent; error_log /dev/null; access_log off; }
Примечания
Чтобы некоторые info_hash'ы обрабатывались правильно, необходимо установить в php.ini:
magic_quotes_gpc = off
Также это можно сделать в Apache через директиву php_flag:
php_flag magic_quotes_gpc off
Её можно добавлять или в .htaccess, или в настройки VirualHost в конфиге Apache.
Настройка через xbt
Можно использовать специализированный трекер, который не требует web сервера. Скачать его можно здесь: http://sourceforge.net/projects/xbtt/. Сразу после его установки он готов к работе ретрекером.
Настройка через xbt + Nginx
Получился конфиг примерно такой, в xbtt необходимо выключить gzip:
server { listen 10.10.10.10:80; server_name retracker.local; server_name_in_redirect off; # Обязательно нужно будет настроить ротацию логов # Если логи не нужны, можно выставить access_log off; access_log /var/log/nginx/retracker.local.access.log; gzip on; location = / { rewrite ^/ /announce permanent; } # Редирект на внутренний ИП более эффективен, нежели # использование proxy_pass location ~ ^/(an|announce) { rewrite ^/ http://10.10.10.10:2710/announce permanent; } location ~ ^/(st|statistics) { rewrite ^/ http://10.10.10.10:2710/st permanent; } # Для оповещения об отсутствии scrape-url вполне подойдёт # стандартная страница nginx-а location ~ ^/scrape { return 404; } }
Опции xbtt:
log_access 0 log_announce 0 debug 0 gzip_debug 0 gzip_scrape 0 announce_interval 600
Настройка opentracker + Nginx
Если в nginx использовать proxy-pass на внутренний адрес, то по логам nginx можно собрать некоторую статистику использования ретрекера.
Но тогда opentracker лучше собрать с опцией -DWANT_IP_FROM_QUERY_STRING - он будет использовать IP из запроса.
При этом В nginx'е же можно подставить нужный нам IP-адрес.
Вот такой вот конфиг nginx'а получился с opentracker
server { listen 80; access_log /var/log/nginx/retracker.access.log; # мойдомен - домен, в котором находится хост # Если выдавать IP-адреса по DHCP, то это значение опции option domain-name # Если не существует адреса retracker.local, то хост ищет retracker.local.<мойдомен> server_name retracker.local retracker.local.<мойдомен>.ru tracker.local tracker.local.<мойдомен>.ru; location / { Если в запросе присутствует ip=, убираем его if ($args ~* ^(.*)&ip=[^&]+(.*)$) { set $args $1$2; } #В качестве IP ставим адрес, с которого пришел запрос set $arg_ip $remote_addr; #Перенаправляем /announce.php на announce rewrite ^/announce\.php$ /announce/?$args&ip=$arg_ip? break; #scrape.php - на scrape rewrite ^/scrape\.php$ /scrape/?$args? break; # / (retracker.local, без announce - на anounce/) rewrite ^/$ /announce/?$args&ip=$arg_ip? break; #адрес opentracker'а proxy_pass http://127.0.0.1:6969/; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; } }
В opentracker при этом всего 1 опция:
listen.tcp_udp 127.0.0.1:6969
Ошибка цитирования Ошибочный тег <references>
;
можно использовать только параметр group
.
<references />
или <references group="…" />
| unknown = | preview = Страница использует Шаблон:Примечания с неизвестным параметром «_VALUE_» | ignoreblank = y | 1 | colwidth | group | liststyle | refs }}
Вопросы по ретрекеру можно задать здесь.