我遇到一个问题,我有一个现有的客户端服务器(基于套接字)应用程序,客户端发出请求,当请求完成时,服务器会将通知发送回客户端。
现在,如果服务器位于主机A上,则客户端只能直接连接到服务器。有些用户希望能够在不同的主机上托管服务器,而出于安全配置原因,客户端无法直接连接到该主机。 / p>
我的问题是:代理服务器会解决这个问题吗?例如,客户端连接到他们认为是服务器的东西,但实际上是代理服务器。但是发送到真实服务器的源IP会发生什么?它仍然是客户端的IP吗?如果是这样,那么我使用代理服务器的狡猾计划将起作用。但如果不是一切都会失败(我猜)?
基本上,简单来说问题是代理服务器是否会以某种方式摆弄:数据包的IP部分,以便收件人将任何响应/消息发送回实际客户端?或者它以其他方式工作?
我的想法是代理会记录每个客户端和请求。例如ip:1.1.1.1想要GET google.com然后当google.com代理回复时说它必须是1.1.1.1并转发到那里。但我不确定这是如何工作的。只是寻找一个高级别的设计,它是如何工作的。
有人可以为我澄清吗?
安格斯