Proxy Checker
REMOTE_ADDR = 38.103.63.17 (38.103.63.17)
HTTP_VIA =
HTTP_X_FORWARDED_FOR =
You have either No Proxy or a High Anonymity Proxy
I use this as my start page to verify that Firefox has the proper proxy selected. Not that I don't trust the Switchproxy toolbar, but it never hurts to double check.
Proxy Types
No Proxy
In this case (the majority of internet users), http requests are sent directly from your machine to the server. There is no privacy or caching benefits.
A non-proxied system will display the following information:
- REMOTE_ADDR = Your IP
- HTTP_VIA = blank
- HTTP_X_FORWARDED_FOR = blank
Transparent Proxy
A transparent proxy anounces to the world that it's a proxy, and passes on your information. It provides no privacy improvements (except against poorly coded sites that only look at REMOTE_ADDR and not HTTP_X_FORWARDED_FOR). It can provide a benefit by caching frequently accessed pages; many companies also use this system for filtering purposes.
A transparent proxy will display the following information:
- REMOTE_ADDR = Proxy's IP
- HTTP_VIA = Proxy's IP
- HTTP_X_FORWARDED_FOR = Your IP
Anonymous Proxy
An anonymous proxy offers the caching benefits of a transparent proxy, while hiding your IP address (by replacing with either the proxies IP, or a random address. The downside to this approach is that sites that use address detection to establish unique users (online games, voting, some logins) will not be able to distinguish you from others in your domain. Of course, that might be a bonus sometimes.
An anonymous proxy will display the following information:
- REMOTE_ADDR = Proxy's IP
- HTTP_VIA = Proxy's IP
- HTTP_X_FORWARDED_FOR = Proxy's IP, or random
Highly Anonymous
A highly anonymous (often known as an elite proxy) makes your system look the same as a non-proxied system (with the proxy server's IP address). This provides the best security; however, all the caveats of an anonymous proxy are still present. In addition, an anonymous proxy's existance can be detected, and the server can suggest workarounds, but there's no way to detect an elite proxy. Again, that may be your goal.
A highly anonymous proxy will display the following information:
- REMOTE_ADDR = Proxy's IP
- HTTP_VIA = blank
- HTTP_X_FORWARDED_FOR = blank
כ"ד ניסן תשס"ז - April 11, 2007 at 8:43 pm
what the hell is up ?
כ"ד ניסן תשס"ז - April 11, 2007 at 8:51 pm
I beg your pardon?
י"ד סיון תשס"ז - May 30, 2007 at 12:43 pm
Hi,
I am a new PHP programmer and cannot find the answer to my questions anywhere on the web - or at least can't get a solution to work.
I am trying to find (and log) the IP address of users. But I need to log the indivual users behind a router, so that I can tell how many unique users are accessing a page. I can easily find the IP address of the router ($_SERVER[remote_addr]) but not the users behind this - so it looks like only one person is accessing the site that I am logging.
Can you help?
כ"ו סיון תשס"ז - June 11, 2007 at 7:41 pm
Hi John,
Sorry, somehow, I missed your comment. I don't think that's technically possible… you can try and log incoming connections via
getenv('HTTP_X_FORWARDED_FOR');, but that's not foolproof, nor is it part of the standard logs for Apache (or any other web server, to the best of my knowledge).ה' תמוז תשס"ז - June 20, 2007 at 6:01 am
Fiddlestick
ה' תמוז תשס"ז - June 20, 2007 at 6:01 am
Fiddlesticks again!
ט"ז אלול תשס"ז - August 29, 2007 at 4:41 pm
Just wanted to say thanks. Finally a clear definition of the different types - and how to check it. At http://www.lagado.com/proxy-test there is basically the same but with the addition of a cache test as well, never really understood the idea behind that…