HTTP(s) 反向代理、TCP 代理、Socks5 代理之间的区别?
Difference between HTTP(s) Reverse Proxy, TCP Proxy, Socks5 Proxy?
这是我对这些的理解,我发现那里几乎没有差距;特别是何时何地使用
HTTP(s) 代理:
- 可用作TLS终止代理
- 可用于修改HTTPheaders
- 可用作负载均衡器或DMZ 前面的public IP 提供程序以屏蔽后端服务器
TCP 代理
- 可以作为TCP连接的反向代理,不仅可以支持HTTP还可以支持其他应用层协议如FTP
我的问题
- 如果我只接受 HTTP 网络流量,在什么情况下我们应该使用 TCP 代理而不是 HTTP 代理
- 这个认识有联系吗? TCP 客户端可以连接到 TCP 代理上的单个套接字,TCP 代理可以打开到后端服务器的多个连接,类似于负载平衡器
SOCKS5 代理
- 来自维基百科
Socket Secure (SOCKS) is an Internet protocol that exchanges network packets between a client and server through a proxy server. SOCKS5 additionally provides authentication so only authorized users may access a server. Practically, a SOCKS server proxies TCP connections to an arbitrary IP address, and provides a means for UDP packets to be forwarded.
SOCKS 在 OSI 模型的第 5 层执行(session 层,表示层和传输层之间的中间层)。 SOCKS 服务器接受 TCP 端口 1080 上的传入客户端连接
我的问题
- SOCKS 代理在 Web 应用程序中的用途是什么
- TCP 和 SOCKS5 代理的区别
- 在TCP/IP模型中是传输层协议吗
- 代理 UDP 连接的用例是什么
If I only accept HTTP web traffic what are the use cases where we should use TCP proxy instead of HTTP Proxy
TCP 代理终止传入的 TCP 套接字,打开出站套接字并在其间移动数据。它不会't/can不更改中间的数据,因为它不理解任何数据。大多数情况下,TCP 代理只能创建到单个 host:port 组合的连接。
HTTP 代理理解 HTTP。它查看传入的 HTTP 请求并使用出站的、可能已更改的 HTTP 请求来完成请求。代理可以读取 HTTP 的请求主机地址并以这种方式连接到多个主机。它知道 TCP 代理不知道的 HTTP 应用程序级别。一些 HTTP 代理甚至可以完成 FTP 或仅使用 HTTP 的客户端的 HTTPS 请求。
“正向”代理是从私有连接到 public IP space(这是代理的最初想法)的代理,而“反向”代理是从 public 到私有 IP(例如,将不同的 Web 服务器映射到单个 public IP)。从技术上讲,它是相同的,但是从安全 POV 来看有很大的不同(在“正向”中你信任客户端,在“反向”中你信任服务器)。
Is this understanding connect? TCP clients can connect to a single socket on TCP proxy and TCP Proxy can open up multiple connections to the backend servers something similar load balancers
是的。
Difference between TCP and SOCKS5 proxy
SOCKS5是一个通用的代理协议,比TCP代理能做更多的事情,包括一对多连接、监听端口和UDP。
In TCP/IP model is it a transport layer protocol
对我来说,SOCKS5 是一种应用层协议,用于仲裁传输协议连接。一些人认为 SOCKS5 是传输层和应用层之间的会话层协议 - 这有一定道理,但会话层在 TCP/IP.
中定义不正确
What are the use cases for proxying UDP connections
例如,SOCKS5 可用于私有到 public Internet 访问或(不安全)public 到私有 LAN 访问。
这是我对这些的理解,我发现那里几乎没有差距;特别是何时何地使用
HTTP(s) 代理:
- 可用作TLS终止代理
- 可用于修改HTTPheaders
- 可用作负载均衡器或DMZ 前面的public IP 提供程序以屏蔽后端服务器
TCP 代理
- 可以作为TCP连接的反向代理,不仅可以支持HTTP还可以支持其他应用层协议如FTP
我的问题
- 如果我只接受 HTTP 网络流量,在什么情况下我们应该使用 TCP 代理而不是 HTTP 代理
- 这个认识有联系吗? TCP 客户端可以连接到 TCP 代理上的单个套接字,TCP 代理可以打开到后端服务器的多个连接,类似于负载平衡器
SOCKS5 代理
- 来自维基百科
Socket Secure (SOCKS) is an Internet protocol that exchanges network packets between a client and server through a proxy server. SOCKS5 additionally provides authentication so only authorized users may access a server. Practically, a SOCKS server proxies TCP connections to an arbitrary IP address, and provides a means for UDP packets to be forwarded.
SOCKS 在 OSI 模型的第 5 层执行(session 层,表示层和传输层之间的中间层)。 SOCKS 服务器接受 TCP 端口 1080 上的传入客户端连接
我的问题
- SOCKS 代理在 Web 应用程序中的用途是什么
- TCP 和 SOCKS5 代理的区别
- 在TCP/IP模型中是传输层协议吗
- 代理 UDP 连接的用例是什么
If I only accept HTTP web traffic what are the use cases where we should use TCP proxy instead of HTTP Proxy
TCP 代理终止传入的 TCP 套接字,打开出站套接字并在其间移动数据。它不会't/can不更改中间的数据,因为它不理解任何数据。大多数情况下,TCP 代理只能创建到单个 host:port 组合的连接。
HTTP 代理理解 HTTP。它查看传入的 HTTP 请求并使用出站的、可能已更改的 HTTP 请求来完成请求。代理可以读取 HTTP 的请求主机地址并以这种方式连接到多个主机。它知道 TCP 代理不知道的 HTTP 应用程序级别。一些 HTTP 代理甚至可以完成 FTP 或仅使用 HTTP 的客户端的 HTTPS 请求。
“正向”代理是从私有连接到 public IP space(这是代理的最初想法)的代理,而“反向”代理是从 public 到私有 IP(例如,将不同的 Web 服务器映射到单个 public IP)。从技术上讲,它是相同的,但是从安全 POV 来看有很大的不同(在“正向”中你信任客户端,在“反向”中你信任服务器)。
Is this understanding connect? TCP clients can connect to a single socket on TCP proxy and TCP Proxy can open up multiple connections to the backend servers something similar load balancers
是的。
Difference between TCP and SOCKS5 proxy
SOCKS5是一个通用的代理协议,比TCP代理能做更多的事情,包括一对多连接、监听端口和UDP。
In TCP/IP model is it a transport layer protocol
对我来说,SOCKS5 是一种应用层协议,用于仲裁传输协议连接。一些人认为 SOCKS5 是传输层和应用层之间的会话层协议 - 这有一定道理,但会话层在 TCP/IP.
中定义不正确What are the use cases for proxying UDP connections
例如,SOCKS5 可用于私有到 public Internet 访问或(不安全)public 到私有 LAN 访问。