Статьи » Недоступный порт » Дополнительно
Дополнение
Термин "исходящее/входящее соединение" показывает только кто инициировал соединение. После установления соединения данные могут идти в обе стороны. Это как телефонный звонок - неважно кто именно позвонил, говорить и слушать могут оба абонента.
С недоступным портом можно нормально и качать и отдавать. Просто желательно выбирать популярные раздачи - там, где много участников, найдется и достаточно доступных пиров.
Если ваш клиент вообще не скачивает или не отдает ни на одной раздаче (включая раздачи, где участников больше 20), то сперва разберитесь с этой проблемой, а потом уже займитесь недоступным портом.
Недоступный порт не имеет никакого отношения к общению с трекером или учету статистики и рейтинга.
Если не получается
Если сделать порт доступным не получается, спросите помощи у более опытных пользователей. При этом обязательно укажите, какие конкретно шаги вы пытались сделать сами, т.е.:- какой у вас на компьютере файервол и какая модель раутера
- результат команды ipconfig
- что вам показывают сайты из раздела NAT
- смогли ли вы найти нужный раздел настроек файервола/раутера
- если да, то приведите скриншот вашей попытки настроек
- кто ваш интернет провайдер
Клиент: входящие соединения
Некоторые клиенты показывают доступность порта специальным индикатором.
См. значения индикаторов порта в клиенте µTorrent
-
Практически во всех клиентах можно в списке соединенных пиров посмотреть, является ли соединение начатым:
- вашим клиентом ( исходящее / локальное / Local / Outgoing )
- другим клиентом ( входящее / удаленное / Remote / Incoming )
- Например:
- µTorrent: буква I в столбце Флаги
- BitTornado: буквы L / R в столбце Local/Remote
- BitComet: столбец Инициация
Проверка порта трекером
Имя | Доступ. | ... |
... | ... | ... |
Саша | Да | ... |
Маша | Нет | ... |
... | ... | ... |
Когда вы запускаете задачу и клиент обращается к трекеру, многие трекеры сразу же проверяют доступность вашего порта тем же способом, что и онлайновый сканер портов - то есть посылают клиенту пробный пакет и ждут ответа.
Такие трекеры показывают результат проверки в таблице участников на странице раздачи, обычно во втором столбце.
- Если на разных раздачах трекер показывает вам разные статусы порта:
- если у вас однозадачный клиент типа BitTornado, то не забывайте, что для него вы должны были открыть диапазон входящих портов.
- чаще всего это просто значит, что у вас порт доступен, но в момент запуска некоторых задач трекер или ваш интернет канал был перегружен. Попробуйте немножко ограничить скорости клиента и перезапустить задачу.
Многие трекеры запрограммированы не сообщать о вас другим участникам, если у вас недоступный порт. Разумеется, это имеет смысл, чтобы участники не пытались начать соединения, заранее обреченные на провал. Однако если трекер ошибся и на самом деле ваш порт доступен, то для вас эта ошибка будет иметь практически такой же результат, как и недоступный порт.
Почему проблема именно с 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).
-
UDP NAT Traversal - это технология соединения двух клиентов с недоступными портами. Важные особенности:
- клиенты как были, так и остаются недоступны снаружи
- соединение осуществляется с помощью третьей стороны
- успешность соединения зависит от особенностей реализации NAT и файерволов между клиентами
В настоящий момент эта технология реализована в торрент клиентах BitComet и BitSpirit, и вероятно скоро появится в µTorrent. Технология не является частью битторрент протокола, поэтому работает только между одинаковыми клиентами. Третьей стороной предположительно выступает еще один такой же клиент с доступным портом. Про подробности технологии читайте тут: UDP Hole Punching (англ.).
Что все это значит на практике. Если у вас порт доступен, вам это вообще не нужно.
Если по каким-то причинам вы не можете сделать свой порт доступным, и если вы используете BitComet или BitSpirit,
то убедитесь, что UDP NAT Traversal у вас разрешено
(в настройках BitComet это Доп. установки - Условия подключения -
"Применить обход NAT через UDP" - выбрать "Автоопределение" или "Always").
Иногда это может добавить вам несколько дополнительных пиров.
Сид 1 | доступен | ... | BitComet |
Сид 2 | нет | ... | BitComet |
Качающий | нет | ... |
Сетевой порт, клиент и сервер, NAT - теоретическая статья.