Перенаправить порт с помощью TCP (или чего-либо еще) в Gamemaker Studio

Я пытаюсь сделать глобальную многопользовательскую игру в Gamemaker Studio. Но мне нужно автоматически пробросить порты клиентского ПК на маршрутизатор. Единственный способ сделать это в Gamemaker, который я могу себе представить, — это использовать TCP/HTTP, чтобы указать маршрутизатору перенаправлять порты. Но я понятия не имею, как это сделать, и не смог найти ответ в гугле.

Это возможно ? И если да, то какие сообщения отправлять?


person An intern has no name    schedule 11.11.2016    source источник


Ответы (1)


Протокол, который обычно используется для автоматической переадресации портов потребительскими маршрутизаторами, — UPNP.

Существует расширение Game Maker под названием Faucet Forwarding, которое использует библиотеку miniupnp для обеспечения функций переадресации. Загляните в подкаталог «библиотека», чтобы найти фактическое расширение. Однако он был разработан для Game Maker 8 и будет работать только с играми для Windows. Кроме того, реализации UPNP в дешевых потребительских маршрутизаторах часто содержат ошибки, поэтому некоторые из ваших плееров могут не работать.

person Medo42    schedule 12.11.2016
comment
Я никогда не пробовал пробивать отверстия, кажется, что это довольно сложно сделать правильно. И я не говорю, что UPNP плохой или что его не стоит использовать, но важно знать недостатки. - person Medo42; 13.11.2016
comment
Другим недостатком UPnP-IGD является то, что вы не можете доверять его A) поддержке и B) включению в маршрутизаторе пользователя. - person Jussi Kukkonen; 13.11.2016