предложение по обьеденинию серверов
|
|
|
|
FX |
Re: предложение по обьеденинию серверов |
Регистрация: 15.8.06
Сообщений: 392
Откуда:
|
|
Цитата: игра идет уже без участия сервера
я где-то в инете читал что после запуска игры обмен данными идет между всеми клиентами, а не синхронизация через сервер создавшего игру(как в cs)
Цитата: проблема в том, что маршрутизация между внешней и внутренней сетями невозможна - единственное приходящее в голову решение это nat, но тут есть проблема: мы имеем всего 1 порт, причем UDP, а значит соединения не устанавливаем, и разобраться, кому доставлять ответный пакет, довольно проблематично.
это я не очень понял.
Я тут посмотрел через TCPView, игра открывает порт 6112 UDP на одном интерфейсе, том через который установлено соединение с bnet. Из-за этого подключится всем к бнет серверу не внутри впн и при установленном впн соединении играть по впн не получается. |
|
» 21.9.10 00:16 |
|
|
il |
Re: предложение по обьеденинию серверов |

Добрый Админ
Регистрация: 10.5.06
Сообщений: 2470
Откуда:
|
|
Цитата: игра открывает порт 6112 UDP на одном интерфейсе, том через который установлено соединение с bnet
Да, конечно - игра подключается к 192.168.150.1, соответственно подключается через впн-интефейс, на котором находится эта подсеть. Цитата: Из-за этого подключится всем к бнет серверу не внутри впн и при установленном впн соединении играть по впн не получается
Да, хотя возможен (возможен ли?) вариант, например не играть, но находиться в одном чате клиентам с впн и без впн. При этом бнет имеет часть внешних подключений и часть подключений из 192.168.150.0/24 Поскольку снаружи локальная подсеть недоступна, то задачу трансляции адресов должен взять на себя сервер. Причем очевидно, поскольку для входящих соединений бнет использует всего 1 порт, а у сервера есть всего 1 внешний ип, то все пакеты от внешних клиентов внутрь впн должны поступать именно на этот ип и этот порт. В результате понять, кому из впн-клиентов предназначен этот приходящий на внешний ип и порт пакет, становится очень проблематично. Тем более с учетом того, что это UDP, а не TCP. Хотя я и не говорю, что это невозможно.
Кстати, другая идея, которая пришла мне в голову не так давно, уже после наших разговоров с лдиром - подменить порт UDP 6112 разными портами для разных клиентов из одной подсети. С обратной подменой на сервере. Тогда хитрая настройка сервера, плюс хитрая настройка роутера клиентской подсети позволила бы этим клиентам взаимодействовать наравне с внешними клиентами если не в игре, то по крайней мере в чате. А хитрый патч для вар2, позволивший бы менять порты бнета, активированный у всех клиентов, включая внешних, позволил бы даже играть всем клиентам вместе, не пользуясь впн. Для этого надо было всего лишь хитрым способом настроить сервер, и даже не понадобилось бы трогать клиентские роутеры. |
|
» 21.9.10 01:32 |
|
|
FX |
Re: предложение по обьеденинию серверов |
Регистрация: 15.8.06
Сообщений: 392
Откуда:
|
|
Цитата: Да, хотя возможен (возможен ли?) вариант, например не играть, но находиться в одном чате клиентам с впн и без впн. При этом бнет имеет часть внешних подключений и часть подключений из 192.168.150.0/24
Для этого никаких хаков не надо достаточно запустить один pvpgn сервер на двух интерфейсах, вроде ничего сложного, он же не как вар2 на одном интерфейсе только может ждать подключения?
Цитата: Кстати, другая идея, которая пришла мне в голову не так давно, уже после наших разговоров с лдиром - подменить порт UDP 6112 разными портами для разных клиентов из одной подсети. С обратной подменой на сервере. Тогда хитрая настройка сервера, плюс хитрая настройка роутера клиентской подсети позволила бы этим клиентам взаимодействовать наравне с внешними клиентами если не в игре, то по крайней мере в чате. А хитрый патч для вар2, позволивший бы менять порты бнета, активированный у всех клиентов, включая внешних, позволил бы даже играть всем клиентам вместе, не пользуясь впн. Для этого надо было всего лишь хитрым способом настроить сервер, и даже не понадобилось бы трогать клиентские роутеры.
Вроде бы то о чем ты пишешь уже и так поддерживается pvpgn-ом: Вот тут кое-то нашел: Цитата: The address_translation configuration file provides a mechanism for external users to communicate with game playing users on the same LAN as the PvPGN server. Thus you map all of your internal ip addresses to your external ip address on different TCP/IP ports giving an illusion of appearing externally.
Почитай Надо разбираться, экспериментировать... |
|
» 23.9.10 06:45 |
|
|
ПраваВы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения.
| Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.
|
|
|
|
|