Перенаправление на несколько компьютеров

1512
Black

Я и мои братья играем в компьютерную игру GTA Online. Мы все подключены к одной локальной сети.

Однако иногда мы испытываем проблемы с подключением. Сейчас я прочитал на официальном сайте Rockstar, что это поможет разблокировать / переслать некоторые порты в моем роутере.

Однако для одного компьютера это имеет смысл для меня, но как маршрутизатор будет обращаться с входящими пакетами, если я определил следующие два правила переадресации портов?

enter image description here

Вы можете видеть, что я пересылаю, например, порт 80 на компьютер Black и Black2 . Будет ли компьютер Black и компьютер Black2 принимать все входящие пакеты через порт 80 маршрутизатора, а другие компьютеры ничего не получат?

И получает ли компьютер Black также пакеты, предназначенные для Black2, или только его пакеты?

Как маршрутизатор узнает правильную цель?

3
Это просто не сработает. Вам следует обратиться к Rockstar с просьбой о лучшей поддержке NAT, потому что именно в этом и заключается IPv4-Интернет. // Также порт 80 абсолютно не требуется. К сожалению, большинство издателей игр все еще не предоставляют список портов, которые будут иметь * входящие * соединения. Daniel B 7 лет назад 4
Как говорит Даниэль Б., это не сработает. Входящие пакеты, полученные через порт 80 и т. Д., Будут перенаправлены ТОЛЬКО ОДНОМУ внутреннему ПК, либо черному, либо черному2. Какой из них трудно сказать, это, вероятно, зависит от того, какое правило на первом месте. Также возможно, что некоторые пакеты отправляются на один компьютер, а другие - на другой. simlev 7 лет назад 0
Сетевой доступ к программе определяется комбинацией IP: порт. Этот IP должен быть уникальным в маршрутизируемом Интернете. Порты 0-65535. Если вы добавите NAT, то ваши локальные IP-адреса больше не будут уникальными, и многие вещи сломаются. Маршрутизатор должен сделать некоторую причудливую работу с пакетами, чтобы все работало. Это не проблема сама по себе, но в этом случае у вас есть только один, нормальный, маршрутизируемый IP-адрес. С фиксированным номером порта (80 в вашем случае) и одним IP есть только одна уникальная комбинация. Тем не менее у вас есть два компьютера. Это значит, что это не сработает. Hennes 7 лет назад 0
Вам нужно будет либо сменить порт на одном из компьютеров, либо второй обычный IP. Или современная игра и использовать IPv6. (Который сейчас 2 десятилетия, но все еще плохо поддерживается во многих играх). Hennes 7 лет назад 0
Вы можете попробовать проверить, поддерживает ли GTA Online UPNP, и когда у вас на маршрутизаторе включена поддержка UPNP. Таким образом, игра сможет автоматически настраивать все, что ей нужно. По крайней мере, мне не нужно было настраивать переадресацию портов для GTA V. Не забывайте, что проблемы с подключением также могут быть вызваны удаленной стороной. Seth 7 лет назад 1
Включение протокола управления портами UPnP («доступ только для чтения») является проблемой безопасности. Не делай этого. Daniel B 7 лет назад 0
Я сомневаюсь, что это проблема безопасности. Почему это должно быть рискованно? Black 7 лет назад 0
@DanielB Да, было бы неплохо получить более подробную информацию о требованиях GTA Online от их поддержки. simlev 7 лет назад 0
@Hennes Мне нравится твоя идея, это была бы одна проблема, решаемая ipv6. Однако я сомневаюсь, что онлайн-игры позаботятся о том, чтобы правильно его реализовать. simlev 7 лет назад 1
Тогда NAT больше не понадобится игрокам, использующим ipv6, это было бы здорово, так как соединение было бы намного лучше? Black 7 лет назад 0
Он больше не будет нуждаться в NAT и, следовательно, удалит служебную информацию в брандмауэре / модеме / маршрутизаторе / multi-thingy. Так что да, производительность должна быть лучше. Если заметно лучше - это другой вопрос. Hennes 7 лет назад 1

3 ответа на вопрос

6
simlev

Пакеты, полученные через порт 80 и т. Д., Будут пересылаться ТОЛЬКО ОДНОМУ внутреннему ПК, либо черному, либо черному2.

Будет ли компьютер Black и компьютер Black2 принимать все входящие пакеты через порт 80 маршрутизатора, а другие компьютеры ничего не получат?

Входящие пакеты через порт 80 внешнего интерфейса маршрутизатора отправляются либо в черный, либо в черный2 . Трудно сказать, какой именно, это зависит от порядка, в котором маршрутизатор внутренне обрабатывает правила. Тот факт, что черные стоят на первом месте в вашем веб-управлении, не обязательно означает, что их правила имеют более высокий приоритет, чем правила, касающиеся Black2 . Правда, одно правильно: другие компьютеры ничего не получат.

Компьютер Блэк также получает пакеты, предназначенные для Black2, или только его пакеты? Как маршрутизатор узнает правильную цель?

Это важный момент: маршрутизатор не может определить, предназначен ли пакет для черного или черного2 . Он не может различить их и, вероятно, отправит их всех к черным или черным2 . Также может случиться, что некоторые из них перейдут к черным, а некоторые - к черным2, но они не будут «правильными». Поскольку вы пересылаете более одного порта, может случиться так, что пакеты, поступающие на один порт, станут черными, а пакеты, поступающие на другой порт, перейдут на черный2 . Это невозможно предсказать, поскольку вы дали маршрутизатору неоднозначные указания.

Что ты можешь сделать?

Вы должны взять под контроль, какие пакеты идут куда. Я вижу два пути.

  1. один состоит в том, чтобы включить только один набор правил и играть, например, с черными . Если вы хотите поиграть с Black2, вернитесь к интерфейсу управления маршрутизатора и сделайте переключатель: отключите Black и включите Black2 . Я знаю, что это не то, что вы хотите, и вы ищете способ играть одновременно на двух компьютерах.
  2. Другой способ - настроить клиентов на использование двух разных наборов портов и создать два разных набора правил пересылки на маршрутизаторе. Я имею в виду открыть настройки игры и посмотреть, есть ли такая опция. Как бы то ни было, это невозможно, это зависит от того, предусмотрел ли производитель игр такую ​​возможность. Этот вид настройки очень распространен в мире серверов, но на потребительском рынке часто ожидается, что существует только одна рабочая станция, и она напрямую подключена к Интернету.
«Однако одно верно: другие компьютеры ничего не получат». Я не уверен, что компьютеры, отличные от черного или черного, могут по-прежнему пользоваться Интернетом, использовать WhatsApp и т. Д., Хотя порт 80 = TCP, и почти каждое приложение в Интернете использует TCP. Возможно ли, что маршрутизатор все еще может различать компьютеры по их MAC-адресам? Тогда несколько форвардных правил будут работать. Black 7 лет назад 0
Хорошо, под «не получу ничего» я ​​имею в виду, что они не получат никаких пакетов, поступающих через порт 80, а не то, что они не смогут выходить в Интернет! Конечно, маршрутизатор отличает ПК от их MAC-адресов, но входящие пакеты не отмечены MAC-адресами * Black * или * Black2 *. Смотрите [это] (https://arstechnica.com/civis/viewtopic.php?t=318213) вопросы и ответы. simlev 7 лет назад 1
Но веб-сайты http / https используют TCP, поэтому, например, мой смартфон не должен получать ничего, если ваше утверждение верно, но это так. Я проверю это дважды, если я дома. Black 7 лет назад 0
Похоже, недоразумение сохраняется. Позвольте мне попытаться объяснить: ваш смартфон подключается к * удаленному * порту 80 с локального верхнего порта (обычно> 50000). Ответ возвращается на верхний порт, а не на порт 80. Порт должен быть открыт, чтобы * принимать * входящие запросы. simlev 7 лет назад 2
3
harrymc

То, что вы просите, неосуществимо, потому что все в вашем доме используют один и тот же маршрутизатор и внешний IP-адрес в Интернете, поэтому внешний наблюдатель не может отличить одного из вас от других. Но может быть альтернативное решение.

Я не знаю, как работает GTA Online, но мне кажется, что, если вы не размещаете сервер, все соединения исходят от вашего компьютера и действуют как клиент, поэтому серверу, к которому вы подключаетесь, никогда не нужно инициировать обратное соединение.

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

Если это не работает, есть другое решение, но с небольшими шансами на успех, которое заключается в настройке маршрутизатора и всех устройств в домашней сети для использования только протокола IPv6 и повсеместного отключения IPv4. Таким образом, все устройства будут иметь разные адреса в Интернете. Однако IPv6 может не полностью поддерживаться универсально, и, возможно, его реализация на маршрутизаторе будет по-прежнему использовать только один внешний IP-адрес. Технические проблемы могут быть слишком сложными для решения.

2
Dave Lucre

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

Похожие вопросы