【问题标题】:Question on behaviour of a proxy server关于代理服务器行为的问题
【发布时间】:2011-07-12 14:04:38
【问题描述】:

我有一个问题,我有一个现有的客户端服务器(基于套接字)应用程序,客户端发出请求,当请求完成时,服务器将通知发送回客户端。

现在,如果服务器位于主机 A 上,客户端只能直接连接到服务器。出于安全配置原因,一些用户希望能够将服务器托管在客户端无法直接连接到的不同主机上。

我的问题是:代理服务器会解决这个问题吗?例如,客户端连接到他们认为的服务器,但实际上是代理服务器。但是发送到真实服务器的源 IP 会发生什么?它仍然是客户端的IP吗?如果是这样,那么我使用代理服务器的狡猾计划将奏效。但如果不是一切都会失败(我假设)?

基本上,简单来说,问题是代理服务器是否会以某种方式摆弄数据包的 from: IP 部分,以便收件人将任何响应/消息发送回实际客户端?还是以其他方式起作用?

我的想法是代理记录每个客户端和请求。例如 ip: 1.1.1.1 想要 GET google.com 然后当从 google.com 代理返回响应时说它必须是 1.1.1.1 并转发到那里。但我不确定这将如何工作。只是在寻找其工作原理的高级设计。

谁能帮我澄清一下?

安格斯

【问题讨论】:

    标签: sockets networking proxy


    【解决方案1】:

    如果这是 TCP,则响应通常会通过请求传入的同一连接发送回。无需源 IP 地址。服务器响应代理,代理响应客户端。

    【讨论】:

    • 我认为我的项目需要写一个。我会看一些源代码。我假设客户端和代理之间存在持久连接,直到代理从真实服务器接收到数据,然后代理在同一个套接字连接上发送回响应。谢谢。
    【解决方案2】:

    我建议您阅读TCP/IP 的工作原理以及各种类型的proxies,但总而言之:

    • 客户端的真实 IP 地址在转发到服务器时通常不会被代理保存,
    • 由于NAT 的泛滥,基于 IP 的客户端跟踪方案或多或少没有用处。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多