gpt4 book ai didi

c# - 我可以将 TcpClient 从一台服务器传递到另一台服务器吗?

转载 作者:可可西里 更新时间:2023-11-01 02:47:16 25 4
gpt4 key购买 nike

基本上我是在创建一个在线游戏。我有一台保存所有用户名/密码信息的服务器(登录服务器),然后是一台或多台托管游戏的服务器(游戏服务器)。客户端连接到验证其凭据的登录服务器,检查他们所在的游戏服务器,然后告诉该服务器连接到客户端。

我对安全知之甚少,但我认为让客户端监听来自其游戏服务器的连接比让游戏服务器监听客户端更安全。我认为这至少会让 DDoS 攻击更容易预防。

问题是我了解到,如果您的服务器位于某些类型的路由器或负载平衡器之后,您将无法轻松获取客户端的 ip。我需要登录服务器告诉游戏服务器要连接到谁...除非我可以转移一个打开的连接。我相信某些游戏有服务器集群,可以让客户端在一个或另一个之间 float ,所以我想以某种方式可以将连接从一个服务器传递到另一个。这通常是如何完成的?

也许我离题太远了?

最佳答案

为了避免 DDoS,一个可能的解决方案是让 login server 连接到 game server 并要求它打开一个端口,它确实这样做了,game server 然后可以返回随机 port numberlogin server 然后可以将其发送到 client

游戏服务器可以关闭该端口之前,客户端 将有一个一分钟的窗口连接到它随机分配的端口。

只是一个想法。

Client connects to Login Server:Standard Port
Login Server connects to Game Server:Standard Port
Game Server sends Random Port to Login Server
Login Server sends Random Port to Client
Client connects to Game Server:Random Port

关于c# - 我可以将 TcpClient 从一台服务器传递到另一台服务器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14959974/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com