Writing a TCP reverse proxy (project)
In this section, we will demonstrate the basic functionality of a TCP reverse proxy using just the Rust standard library, without the use of any external libraries or frameworks.
A proxy server is an intermediary software service that is used while navigating across multiple networks on the internet. There are two types of proxy servers – a forward proxy and a reverse proxy. A forward proxy acts as an intermediary for clients making requests out to the internet, and a reverse proxy acts as an intermediary for servers. Figure 11.4 illustrates the usage of forward and reverse proxy servers:
Forward proxies act as gateways to the internet for a group of client machines. They help individual client machines to hide their IP addresses while browsing the internet. They also help to enforce organizational policies for machines within a network to access the internet, such...