1

我有几个关于套接字的问题,我搜索但找不到直接答案。

我有一个登录服务器和一个世界服务器。我从TcpClient to the TcpListener. login server我想要both a Tcp and a Udp connection on the world server,所以一旦登录被检查,我TcpClient使用重定向到世界服务器TcpClient.Connect

在这个过程之后,我告诉客户端通过 连接Udp to the login server,然后使用Socket.Connect再次转发到世界服务器。

我转发而不是将客户端消息发送到客户端进行重定向的原因是我只want to expose the login server IP and port to the client.

我对套接字没有经验,有没有更好的重定向方法而不暴露世界服务器 IP 和端口?

4

1 回答 1

0

您可以在此页面上查看图片:http: //next-gen.cc/

您正在寻找的是一个连接服务器,它将维护一个与客户端套接字的连接并保持客户端的状态(已连接、已验证、正在播放、已断开连接)。

一旦玩家登录,连接服务器打开自己的套接字到正确的游戏服务器并将所有消息转发到那里,当游戏服务器想要发送客户端数据时,它会将其发送到连接服务器,连接服务器又将其发送到客户。换句话说,让您的登录/连接服务器充当客户端和游戏世界之间的路由器。

于 2013-12-28T23:46:22.647 回答