Я создал игру в JAVA. У этого есть два игрока, один будет сервером.Как напрямую связаться с внешним клиентом с IP-адресом и портом
Компьютер создает игру и обслуживает ее. Другой компьютер (внешний) должен подключаться к серверу с использованием его IP и порта. Когда они подключаются, начинается игра, и клиент-клиент отправляет свои ходы на сервер, здесь вычисляются ходы, а новые позиции клиента и сервера на карте игры возвращаются и обновляются.
Проблема заключается в том, что когда я создаю игру локально, сервер и клиент в том же маршрутизаторе, используя локальный IP, игра начинается успешно. Но когда я создаю игру и пытаюсь подключиться с внешнего компьютера, сервер не найден.
Я читал немного, и проблема, вероятно, в том, что это межсетевой экран компьютера или NAT маршрутизатора (что я не слишком понял). Ну, я нашел что-то вроде STUN, там говорят, что он обходит брандмауэр и блокировку маршрутизатора с помощью STUN-сервера, а также нашел список бесплатных STUN-серверов (here). Но я не знаю, что с этим делать. Серверы STUN будут поддерживать связь с сервером и клиентом?
Возможно, без покупки какого-либо онлайн-сервиса, а также с компьютерами с двумя игроками (серверным проигрывателем и клиентским проигрывателем), успешно выполните соединение без отключения портфолио или брандмауэра?
Я хочу поделиться своей игрой, но я не могу попросить каждого игрока отключить их брандмауэр, чтобы играть. =/
Вам необходимо настроить переадресацию портов/межсетевой экран только на стороне сервера. Клиентам не нужно ничего особенного делать. – gudok
Это вопрос о сетях и конфигурации сети, а не о программировании. Это не по теме. –