====== Opentracker ======

Для организации трекера в сети [[yggdrasil:yggdrasil|Yggdrasil]], подойдет любой сервер, с поддержкой IPv6, одним из таких является [[https://erdgeist.org/arts/software/opentracker/|Opentracker]] - сервер с открытым исходным кодом, написанный на [[wpru>Си_(язык_программирования)|языке C]].

Opentracker не требует базы данных, так как вся информация о пирах хранится в оперативной памяти.

===== Установка ===== 

Выполняем официальную инструкцию, предварительно раскомментировав строку ''-DWANT_V6'' в файле [[https://erdgeist.org/gitweb/opentracker/tree/Makefile|Makefile]], таким образом сервер будет оперировать исключительно IPv6

<code>
cvs -d :pserver:cvs@cvs.fefe.de:/cvs -z9 co libowfat  
cd libowfat  
make
cd ..
# LEGACY: cvs -d:pserver:anoncvs@cvs.erdgeist.org:/home/cvsroot co opentracker
git clone git://erdgeist.org/opentracker
cd opentracker
make
</code>

===== Настройки доступа ===== 

Opentracker работает на порту 6969, поэтому для входящих подключений добавим правило в iptables с помощью утилиты ''ufw''

<code>
ufw allow 6969
</code>

В случае, если хотим обслуживать соединения исключительно в сети yggdrasil

<code>
ufw allow from 0200::/7 to any port 6969
</code>

===== Автозапуск ===== 

Добавляем запуск сервера при старте системы, я использовал crontab

<code>
@reboot /path/opentracker -p 6969 -P 6969
</code>

===== Проксирование ===== 

Для корректного приема подключений, opentracker должен быть скомпилирован с флагом:

<code>
-DWANT_IP_FROM_PROXY
</code>

При этом, прокси-сервер должен передавать серверу opentracker клиентский IP, иначе в качестве сидов будет передан локальный IP.

О настройке проксирования трафика посредством nginx для различных нужд, например организации кластеров, можно почитать в разделе [[#Ссылки|ссылки]].

===== Подключение ===== 

Для тестирования раздачи, а также приёма подключений в сети Yggdrasil, торрент-клиент необходимо настроить для прослушивания локального интерфейса или адреса, иначе пир будет идентифицирован по IP сети по-умолчанию (Интернет) и передавать этот адрес трекеру.

На примере [[yggdrasil:bittorrent:qbittorrent|qBittorrent]], сделать это можно в **Preferences** - **Advanced** - **Network interface** или **Optional IP address to bind to**

При наличии фаервол, условием для проверки сидирования данных в сети Yggdrasil является открытие порта, определенного случайно или заданного явно в настройках BitTorrent клиента.

Также, при смене параметров интернет-подключения (VPN или proxy), важно перезапустить BitTorrent клиент.
===== Ссылки ===== 

  * [[https://erdgeist.org/arts/software/opentracker/|Официальный сайт]]
  * [[https://radjik.livejournal.com/195622.html|О настройке проксирования трафика посредством nginx для организации кластеров]]
  * [[yggdrasil:bittorrent:qbittorrent#встроенный_трекер|Торрент-трекер на базе qBittorrent]]