Last modified: October 6, 2017
Proxy servers can be a confusing topic if you are new to network programming or trying to understand internet communication. In this article, we examine what exactly a proxy server is, how it works, and the different types of proxy servers commonly used today.
The internet works through communication between web clients and servers. When you access a site like facebook.com, your web browser is the client and Facebook is the server. Any time you request information from Facebook, your web client communicates with Facebook by exchanging things like your IP address, SSL handshakes, etc. By exchanging this information, Facebook can verify who you are and send you the requested resources.
A proxy server acts as a "middleman" by intercepting requests from the client to the server. Proxy servers can be used to mask IP addresses or act as firewalls. They can also be used maliciously to intercept sensitive information being passed between clients and servers.
Proxy servers can also be used to improve network communication by caching web pages. They can enhance web security or block potentially malicious websites.
A proxy server intercepts communication between clients and servers. Let's say you are using a proxy server to mask your IP address. When you make a request, the proxy server intercepts the client request information (IP address, data payload, etc) and makes the request to the server with an alternative IP address. From the server's perspective, the proxy server is the original client making the request. This keeps the true client anonymous.
There are several different categories or types of proxy servers. Some of the more common ones are:
A transparent proxy simply passes unmodified requests from clients to servers. These proxies don't mask IP addresses or alter the original request at all.
An anonymous proxy hides the original client's IP address before making a request.
This takes the anonymous proxy a bit further by suppling a falsified or incorrect IP address.
Proxy servers act as intermediaries between clients and servers. They can be used for good things like masking IP addresses or vetting web traffic (firewalls). They can also be used for bad things like maliciously intercepting sensitive information. Different types of proxy servers exist for different reasons.