我是否需要端口转发来通过 WAN 连接双人游戏

我是否需要端口转发来通过 WAN 连接双人游戏

所以我做了一个简单的游戏,两个玩家可以连接在一起玩 - 其中一个选择服务器选项(然后游戏开始监听传入的 TCP 同步),另一个输入服务器玩家的 IP 来建立连接并通过 TCP 套接字交换游戏数据。

通常的东西。

但只有当玩家的计算机在同一个局域网内,并且客户端输入服务器的私有IP地址时,玩家才能连接。

所以我猜测如果玩家在不同的局域网,服务器必须有游戏端口转发(55555),然后任何客户端都可以通过输入公网IP地址进行连接。

这是真的吗(目前我还没有办法测试),避免端口转发的常用方法有哪些,因为大多数用户不知道如何操作。

或者,如果双方没有设置端口转发,两个应用程序就不可能通过 WAN 连接?

答案1

您将需要为托管“会话”的服务器执行端口转发。

解决这个问题的唯一方法是拥有一个始终监听用户的专用服务器,以便尝试玩游戏的用户不会托管自己的会话,而是使用专用于游戏的服务器......

但是,端口转发通常非常简单,大多数路由器指南都包含有关如何完成此操作的说明。您将遇到的问题是,家庭用户的公共 IP 很少是静态的,并且会发生变化,从而导致“已知”公共 IP 错误。

相关内容