When we are discussing the technological characteristics of proxies there’s one term which you will see used very often – ‘transparent’. It can actually be used in two distinct ways when it comes to proxies. The first is to refer to a definition which implies transparent proxying ensures that any user will see no difference to the original request whether it goes direct to the server or through a proxy. In an ideal world pretty much all legitimate proxies would be considered ‘transparent’.
Proxies are however significantly more advanced from the early years when this original definition was created. The term ‘transparent proxying’ now has much more meaning. The extended definition means that transparent proxying ensures that the client software is not aware of the existence of the proxy server in the communication stream. This is unusual because the client was usually configured to use a proxy, perhaps by the internet settings in it’s browser configuration. Software would then make a decision in it’s requests and perhaps distinguish between proxy and direct requests.
When transparent proxying, in it’s modern context, is used the router is programmed to redirect the request through the proxy not the client. This means that the proxy can actually be used to intercept and control all HTTP requests that are targeted by outbound connections. The request can even be parsed or perhaps even filtered and redirected. This control allows the network to configure access control rules on all outbound requests, A company network could use these to ensure unsuitable requests are not being made from a corporate network e.g. illegal web sites.
This level of transparent proxying leaves the client completely unaware of the existence of an intermediate proxy server. There are some caveats though and the proxy can be detected in certain circumstances. For example there is little point in investing in a USA proxy buy if the server only supports HTTP/1.1 because the protocol makes no allowance for transparency in proxying information.
One of the main issues and indeed worries is that allowing completely transparent proxying might cause other issues particularly in the client side applications. For example one of the fundamentals of using proxies in a corporate network is to reduce traffic by caching locally. This could cause all sorts of problems if the behaviour of the proxy cache effects communication between the destination server and the client application.
Further Reading – http://www.changeipaddress.net/us-ip-address-for-netflix/