BitTorrent подходит не только для скачивания готовых раздач. Через него можно напрямую передать другу 100 ГБ видео, раздать резервную копию нескольким коллегам или распространить большой архив без загрузки в облако. Файлы остаются на компьютере владельца, а торрент-клиент превращает ПК в источник данных.
Однако простое создание файла .torrent ещё не гарантирует передачу. Получатель может появиться в списке пиров, но скорость останется на нуле. Причиной часто становится NAT, закрытый порт, CGNAT провайдера, неправильная настройка DHT или даже незаметно изменённый исходный файл.
Как устроена собственная торрент-раздача
Файл .torrent не содержит фотографий, видео или архивов, которые предстоит передать. В нём хранится описание раздачи, структура каталогов и криптографические хеши частей данных. Получив такой файл, торрент-клиент ищет компьютеры, у которых есть нужные части, после чего связывается с ними напрямую.
Компьютер с исходными файлами становится сидом. Пиров можно находить через трекер, распределённую сеть DHT и обмен адресами PeX. DHT позволяет работать вообще без центрального трекера. Для небольшой личной раздачи такой вариант особенно удобен.
Если получателей несколько, появляется главное преимущество BitTorrent. Человек, скачавший часть файла, может сразу передавать полученные блоки остальным. Поэтому исходный компьютер уже не обязан самостоятельно отправлять каждому участнику полный объём данных.
Как создать торрент в qBittorrent
Проще всего использовать qBittorrent. Клиент бесплатный, работает в Windows, Linux и macOS, не содержит рекламы, поддерживает DHT, PeX, IPv6, UPnP, NAT-PMP и создание собственных торрентов.
- Подготовьте файл или папку и выберите окончательное расположение. Не перемещайте и не переименовывайте данные после создания раздачи.
- Откройте в qBittorrent инструмент создания торрента (Ctrl+N) и укажите файл или каталог. Также можно перетащить нужный файл или папку в окно создания торрента.
- Оставьте автоматический размер частей, если нет особой причины менять настройку.
- Не включайте режим «Приватный торрент», если раздача должна искать участников через DHT и PeX.
- При желании добавьте торрент-трекер. Для обычной личной передачи при работающем DHT трекер необязателен.
- Включите запуск раздачи после создания, сохраните .torrent и передайте получателю.
У qBittorrent есть и встроенный трекер. Такой вариант позволяет организовать собственную инфраструктуру без публичных трекеров, однако сам трекер должен быть доступен из интернета. Здесь уже придётся разобраться с входящим портом.
Для первой передачи лучше отправлять именно .torrent, а не только magnet-ссылку. Magnet содержит главным образом идентификатор раздачи, поэтому клиенту ещё нужно получить метаданные от других участников. Если единственный сид плохо доступен из-за NAT, получатель может долго видеть надпись о загрузке метаданных. В .torrent необходимые метаданные уже находятся внутри.
Нужен ли статический IP и зачем открывать порт
Статический IP для обычной торрент-раздачи не требуется. Динамический публичный адрес вполне подходит. При подключении клиент сообщает DHT или трекеру актуальные координаты, поэтому смена адреса сама по себе не мешает раздавать файлы.
Гораздо полезнее публичный, или «белый», IP и доступный входящий порт. В настройках qBittorrent можно выбрать постоянный порт входящих соединений и попросить маршрутизатор автоматически пробросить его через UPnP или NAT-PMP. Libtorrent, на котором основан qBittorrent, поддерживает оба механизма.
| Подключение | Статический IP | Проброс порта | Что ожидать |
|---|---|---|---|
| Публичный динамический IPv4 | Не нужен | Желателен | Хороший вариант для раздачи |
| Публичный статический IPv4 | Уже есть | Желателен | Самый предсказуемый вариант |
| IPv4 за CGNAT | Не поможет локально | Обычно невозможен | Входящие соединения ограничены |
| Полноценный IPv6 | Обычно не нужен | NAT может отсутствовать | Нужен разрешающий файрвол |
| VPN с пробросом порта | Не нужен | Да, со стороны VPN | Может обойти CGNAT |
CGNAT особенно часто ломает домашние раздачи. Провайдер помещает множество абонентов за одним публичным IPv4, поэтому правило на домашнем роутере не открывает порт наружу. Диапазон 100.64.0.0/10 официально выделен для таких сетей. Если WAN-адрес роутера отличается от адреса, который видит интернет, либо попадает в 100.64.0.0–100.127.255.255, стоит проверить наличие CGNAT.
Решений несколько. Можно заказать у провайдера публичный IPv4, использовать полноценный IPv6 либо VPN, который разрешает входящие соединения и проброс портов. Статический адрес имеет смысл прежде всего для собственного трекера, потому что его URL должен оставаться рабочим. При динамическом публичном IP проблему можно решить DDNS.
Почему торрент не раздаёт, хотя другой человек уже подключился
Самая коварная ситуация выглядит так: получатель открыл торрент, клиент показывает пира или даже сида, но скорость остаётся 0 Б/с. Наличие адреса в списке ещё не означает, что между двумя компьютерами получилось установить рабочее соединение и запросить блоки.
| Симптом | Вероятная причина | Что проверить |
|---|---|---|
| Пиры есть, скорость 0 Б/с | Закрыт входящий порт | Файрвол, роутер, UPnP, CGNAT |
| Получатель висит на метаданных | Сид недоступен по magnet | Передать обычный .torrent |
| DHT показывает 0 узлов | DHT не подключился | Настройки DHT, UDP, VPN и файрвол |
| Раздача показывает меньше 100% | Файлы переместили или изменили | Путь и принудительную перепроверку |
| Трекер работает, DHT отключён | Включён «Приватный торрент» | Создать торрент заново без приватного флага |
| После включения VPN всё остановилось | Клиент привязан к старому интерфейсу | Настройки раздельного туннелирования в VPN-клиенте |
| Порт проброшен, но закрыт | Двойной NAT | Модем провайдера и собственный роутер |
При двойном NAT порт приходится пробрасывать на обоих маршрутизаторах либо переводить первый в режим моста. При CGNAT настройка домашнего роутера уже не решает проблему. RFC 6598 прямо указывает, что CGN может мешать одноранговым приложениям принимать входящие соединения.
Современный BitTorrent предусматривает NAT hole punching, который помогает некоторым участникам за NAT соединяться друг с другом. Однако полагаться на такой механизм нельзя. BEP 55 использует уже доступного участника как посредника для согласования соединения. В маленькой раздаче из двух плохо доступных компьютеров подходящего посредника может просто не оказаться.
Есть ещё несколько менее очевидных причин. qBittorrent может ограничивать число активных раздач или скорость отдачи, Windows Defender Firewall способен блокировать клиент после обновления, VPN может сменить сетевой интерфейс, а исходный файл после редактирования перестанет совпадать с хешами. После любых подозрительных изменений помогает «Принудительная перепроверка».
Для личной передачи не стоит полностью забивать исходящий канал. Если отдача упирается в максимум соединения, остальные приложения и даже служебный трафик BitTorrent начинают испытывать задержки. Небольшой запас по исходящей скорости часто делает передачу стабильнее. Реальная скорость одному получателю в любом случае не превысит доступную исходящую скорость сидера.
Наконец, BitTorrent нельзя считать приватным каналом только потому, что magnet-ссылка отправлена одному человеку. Участники раздачи видят сетевые адреса друг друга, а неприватный торрент может распространять сведения о пирах через DHT. Для конфиденциальных данных разумнее сначала создать архив с надёжным шифрованием и передать пароль другим каналом.
FAQ: часто задаваемые вопросы
Нужен ли статический IP для создания торрент-раздачи?
Нет. Для обычной раздачи достаточно динамического публичного IP. Намного важнее возможность принимать входящие соединения. Статический адрес особенно полезен при запуске собственного трекера.
Почему qBittorrent не раздаёт созданный торрент?
Проверьте, что раздача показывает 100%, исходные файлы находятся на прежнем месте, скорость отдачи не ограничена, торрент не стоит в очереди, а файрвол и маршрутизатор разрешают соединения через выбранный порт.
Почему пир подключился к торренту, но скачивание не начинается?
Обнаружение пира и рабочее соединение являются разными этапами. Два компьютера могут узнать адреса друг друга через DHT или трекер, но не установить соединение из-за NAT, CGNAT, файрвола, VPN или закрытого порта.
Можно ли раздавать торрент без трекера?
Да. Неприватная раздача может находить участников через DHT и PeX. Для небольшой раздачи такой схемы обычно достаточно, хотя наличие рабочего трекера даёт дополнительный способ обнаружения пиров.
Как раздавать торрент, если провайдер использует CGNAT?
Самый надёжный способ заключается в получении публичного IPv4 у провайдера. Альтернативами служат полноценный IPv6 или VPN с поддержкой входящего порта. Обычный проброс порта на домашнем роутере CGNAT не обходит.
