При использовании классической переадресации портов у вас есть одна конкретная проблема: у вас есть соотношение 1: 1 между входящим портом и участником локальной сети, на которое он пересылается.
Например, вы можете указать этот входящий трафик через порт 12345 (плохая идея; никогда не используйте этот порт!) к машине 192.168.2.2. Но если вы, например, играете в эту игру более чем на одном компьютере, вам придется менять форвард каждый раз, когда вы переключаете машины.
Запуск портов является интересным подходом для устранения этих недостатков:
- Порт не обязательно открыт постоянно (зависит от того, изменяется ли IP-адрес вашей локальной сети).
- Порт всегда будет перенаправлен на соответствующую машину.
Вы по-прежнему сталкиваетесь с проблемами, если хотите использовать несколько машин одновременно или пассивно прослушивать порты (например, веб-сервер), но это нечто иное.
Итак, как это работает? Довольно легко.
Предположим, вы хотите сыграть в какую-нибудь игру, в которой вы хотите провести одиночные матчи. Если есть какой-либо сервер аутентификации, к которому ваша игра будет постоянно подключена, вы можете использовать порт, который сервер использует в качестве порта триггера. Давайте предположим, что это порт 5000.
Для размещения игр другие игроки должны иметь доступ к вашему компьютеру через порт 5001. Таким образом, вы создаете новый динамический порт активации со следующими параметрами:
- Триггерный порт: 5000
- Протокол запуска: (зависит от игры, скорее всего, TCP для не чувствительных ко времени вещей, таких как аутентификация)
- Порты, которые будут открыты: от 5001 до 5001 (как правило, UDP для большинства игр)
И это все.
Теперь, когда вы запускаете игру и пытаетесь пройти аутентификацию / вход в систему, игра создаст исходящее соединение со своим сервером аутентификации через порт 5000.
Маршрутизатор заметит это, так как это "триггерный порт", и включит / перенаправит переадресацию портов на компьютер, который установил это соединение.
Переадресация портов теперь активна, вы можете играть и вести свои матчи и т.д.
Также обратите внимание, что эта функция предоставляется не всеми маршрутизаторами. Некоторые используют другую стратегию для перенаправления портов в изменяющейся среде. Например, маршрутизаторы AVM обычно получают возможность всегда назначать переадресацию портов на один и тот же компьютер, даже если его IP-адрес изменяется из-за DHCP. Хотя это очень удобно для вещей, которые работают без исходящих соединений (выделенные серверы в целом), это не позволит вам динамически переключать машины и использовать те же порты на них без перенастройки переадресации портов.