“ Socks代理”和“支持CONNECT请求的HTTP代理”之间有什么区别

Ale*_*xis 5 https proxy networking http socks

我知道袜子代理是一个代理,它仅将流量中继到dst ip:port和一个支持CONNECT请求的HTTP代理,它也仅将流量中继到http请求标头中的dest主机。 (例如效率)?

Eug*_*its 9

SOCKS 和 HTTPS 代理都使用相应的协议(分别为 SOCKS 和 HTTP)。

这些类型的代理提供几乎相同的功能,不同之处在于 SOCKS 代理位于专用端口上,而 HTTPS 代理可以与 HTTP 代理甚至 HTTP 服务器(或其他混合构造)结合使用。

HTTPS 代理的另一个好处是,一些管理员会阻止 SOCKS 代理并允许 HTTP/HTTPS 连接,因此可以使用 HTTPS 代理绕过 NAT/防火墙限制。

另一方面,一些 HTTPS 代理被配置为仅允许连接到远程 HTTP 和 HTTPS 主机(即不允许连接到其他协议的自定义端口)。


Kal*_*Kal 5

“效率”没有区别。一旦建立了与目标服务器的下游连接,它们的行为将完全相同。

SOCKS 代理基本上是 TCP 代理。任何 TCP 连接都可以通过 SOCKS 代理进行工作。HTTP 代理代理 HTTP 请求。只有 HTTP 会话可以通过 HTTP 代理。

但有一个问题:在 HTTPS 中,会话是加密的,因此 HTTP 代理不允许这样做。解决方案:允许“HTTP CONNECT”。这基本上使 HTTP 代理充当 TCP 代理。

因此基本上,您可以将 HTTP 代理(支持 HTTP CONNECT)的功能视为 SOCKS 代理功能的超集。它的作用与 SOCKS 代理的作用完全一样,甚至更多。


Sis*_*len 5

它们都是第 4 层的代理协议,但是...

  1. SOCKS 可以处理TCP 和 UDP
    HTTP CONNECT 只能处理TCP

  2. SOCKS未加密(注意:身份验证?加密)
    HTTP CONNECT 可以使用TLS

  3. SOCKS 是专用服务
    HTTP CONNECT 可以隐藏在普通 HTTP 服务中


Ben*_*ari 5

以下是从三个因素对它们进行的比较:

因素 SOCKS代理 HTTP代理
安全 SOCKS 代理没有标准隧道加密。 HTTP 代理可以在客户端和服务器之间添加一层安全性,并且可以检测和拒绝可疑数据包或间谍软件。
功能性 SOCKS 代理不直接使用 HTTP 协议。它通常用于更通用的目的,例如内容流和 P2P 文件共享。

由于 SOCKS 代理与协议无关,与 HTTP 代理不同,它们不会直接解释或操作代理流量,因此

SOCKS 代理部署起来更加灵活,因为它们不绑定到特定的网络协议。它们非常适合访问防火墙后面的连接。
HTTP 代理处理 HTTP(S) 流量,该流量通常用于通过 Web 浏览器检索信息。但是,它们可以针对不同的用例进行配置。


HTTP 代理可以解释 Web 服务器和客户端之间的网络流量。因此,可以将它们设置为过滤内容或缓存网络数据。
表现 SOCKS 代理提供极高的速度,使其成为通过互联网下载或传输数据的理想选择。


一些罕见的软件客户端或非常专业的系统可能只支持 SOCKS。
私有 HTTP 代理可提供不错的加载速度,并且更适合管理每秒更多的请求。