Proxy Anonymity Levels
Most proxy list providers and software group their proxies into three levels depending on the anonymity provided. Level 1 indicates the level of highest possible anonymity a proxy could have, and Level 3 is lowest. Some proxy list providers use different categories although the meaning stays basically the same - Elite proxies or sometimes also called High Anonymous proxies usually are considered to be of Level 1. Anonymous Proxies are Level 2, and Transparent Proxies are Level 3.
The only way to hide your identity from the target server is to pass your request through an intermediary who will make the request on behalf of you. This is the basic concept of a proxy server. When a client is using a proxy, all of his requests are sent to a proxy server(intermediary) instead, who then fetches the requested resource on a client's behalf and returns it back to him.
Whether that proxy server forwards additional information about you(such as your real IP address) to a target server is what determines the level of anonymity that that proxy has.
Elite Proxies (Level 1)
Elite or High Anonymity Proxies are considered to be the best because they provide the absolute highest level of anonymity. When using this type of proxy, the server you are connecting to has no idea that the connection was made through a proxy nor does it know your real IP address.
Anonymous Proxies (Level 2)
Anonymous Proxies can provide a sufficient level of anonymity and are thus considered to be useful for most purposes. This type of proxy does not reveal your IP address to a server, however the server will know that the connection was made through a proxy because of the additional information that is sent with each request. Anonymous Proxies usually identify themselves by attaching additional headers to each request such as:
HTTP_CLIENT_IP = ... HTTP_X_FORWARDED_FOR = ... HTTP_X_FORWARDED = ... HTTP_X_CLUSTER_CLIENT_IP = ... HTTP_FORWARDED_FOR = ... HTTP_FORWARDED = ...In order for a proxy to be anonymous, none of those headers should contain your real IP address otherwise such proxy isn't considered to be anonymous, and instead it is a transparent proxy.
Transparent Proxies (Level 3)
Transparent proxies are the type of proxies that forwards the server you are connecting to full information about you like your IP address thus it provides almost no level of anonymity. Such proxies are also known as caching proxies because of their original purpose that is to cache the data that is exchanged between the servers in order to speed up the Internet within the organization.
Transparent proxies are not entirely useless for all purposes, because your IP address is still hidden from the target server, it's just that it would be very easy for them to find it out. For example, let's pretend you are using a transparent proxy which has an IP address of 188.8.131.52 and your real IP address was 184.108.40.206. In that situation, this is how your request would appear to a target server:
... HTTP_X_PROXY_ID = 1522885065 HTTP_VIA = 1.1 220.127.116.11 (Mikrotik HttpProxy), 1.1 proxy4.wasantara.net.id (squid/3.2.2) HTTP_X_FORWARDED_FOR = 18.104.22.168, 22.214.171.124 HTTP_CONNECTION = keep-alive REMOTE_ADDR = 126.96.36.199 ...
As you can see, the variable REMOTE_ADDR which holds the IP address of a visitor instead shows the IP of a proxy, however it does store your real IP address inside other header variables, in this case it's inside HTTP_X_FORWARDED_FOR.