Статьи » Недоступный порт » Дополнительно

Дополнение

Термин "исходящее/входящее соединение" показывает только кто инициировал соединение. После установления соединения данные могут идти в обе стороны. Это как телефонный звонок - неважно кто именно позвонил, говорить и слушать могут оба абонента.

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

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

Недоступный порт не имеет никакого отношения к общению с трекером или учету статистики и рейтинга.

Если не получается

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

Клиент: входящие соединения

Некоторые клиенты показывают доступность порта специальным индикатором. См. значения индикаторов порта в клиенте µTorrent

Проверка порта трекером

33 качаюших
Имя    Доступ. ...
...... ...
СашаДа ...
МашаНет ...
...... ...

Когда вы запускаете задачу и клиент обращается к трекеру, многие трекеры сразу же проверяют доступность вашего порта тем же способом, что и онлайновый сканер портов - то есть посылают клиенту пробный пакет и ждут ответа.

Такие трекеры показывают результат проверки в таблице участников на странице раздачи, обычно во втором столбце.

Многие трекеры запрограммированы не сообщать о вас другим участникам, если у вас недоступный порт. Разумеется, это имеет смысл, чтобы участники не пытались начать соединения, заранее обреченные на провал. Однако если трекер ошибся и на самом деле ваш порт доступен, то для вас эта ошибка будет иметь практически такой же результат, как и недоступный порт.

Почему проблема именно с P2P

Обычные интернет программы - браузер, почтовый клиент, messenger - всегда сами начинают соединения, поэтому доступные порты им не нужны.

Серверы (например web или ftp сервер) в основном ждут входящих соединений. Если вы хотите, чтобы ваш сервер был доступен из интернета, то ему необходимо обеспечить доступный снаружи порт.

P2P программы попеременно соединяются между собой, то есть и начинают и принимают соединения. Доступный снаружи порт им не обязателен, но очень желателен.

LowId

Иногда недоступный порт называют LowId. Этот термин пришел из emule/edonkey P2P сети, где сервер присваивает каждому клиенту число-идентификатор. Если порт клиента доступен, то это число однозначно вычисляется из его IP адреса, обычно состоит из 8-9 цифр называется HighId. Если нет, то сервер сам присваивает клиенту небольшое число - LowId.

Обладатели LowId в emule сети сталкиваются с таким же ограничением, как в и BitTorrent - невозможность соединения с другими LowId. Однако есть и дополнительные неудобства, например сложность подсоединения к серверу - многие emule сервера вообще не пускают LowId или ограничивают их количество 15-20% от общего числа подсоединенных.

UDP NAT Traversal

Под просто NAT Traversal обычно понимают методы обхода NAT с целью получения доступного снаружи порта, обычно опирающиеся на технологию UPnP (статья на русском на сайте MS).

В настоящий момент эта технология реализована в торрент клиентах BitComet и BitSpirit, и вероятно скоро появится в µTorrent. Технология не является частью битторрент протокола, поэтому работает только между одинаковыми клиентами. Третьей стороной предположительно выступает еще один такой же клиент с доступным портом. Про подробности технологии читайте тут: UDP Hole Punching (англ.).


Что все это значит на практике. Если у вас порт доступен, вам это вообще не нужно. Если по каким-то причинам вы не можете сделать свой порт доступным, и если вы используете BitComet или BitSpirit, то убедитесь, что UDP NAT Traversal у вас разрешено (в настройках BitComet это Доп. установки - Условия подключения - "Применить обход NAT через UDP" - выбрать "Автоопределение" или "Always"). Иногда это может добавить вам несколько дополнительных пиров.

Сид 1доступен ...BitComet
Сид 2нет ...BitComet
Качающийнет ... 
Если вы используете какой-нибудь другой клиент и являетесь качающим например на такой раздаче, то имеет смысл временно перейти на BitComet, и возможно через UDP NAT Traversal у вас получится подсоединиться и ко второму сиду. При этом в колонке "Инициация" в списке пиров будет написано "NAT Traversal".





Сетевой порт, клиент и сервер, NAT - теоретическая статья.

Перейти обратно к самой первой странице.