Log in

View Full Version : Why Proxy



jass
07-16-2007, 01:49 PM
I have data record of IP address of those who access my site.
I wonder if it is possible to tell if the IP address is from a proxy server?
What are the possible reasons that one uses a proxy to access a site.
Would be grateful is someone could enlighten me.
Thanks.

djr33
07-16-2007, 02:03 PM
A proxy is simply an internet connection through which someone reroutes their activity.

By using a page that has <?php include('http://google.com'); ?> on it, I could be able to see the contents of google.com. However, their website would register a hit from my host, not from me, since that is where the data is being transferred.

A proxy is used for many different things, but a main reason is to remain anonymous, or, more specifically, not use your own IP.
Several examples:
1. Something illegal. Rerouting would make this hidden/untracable (to some extent, anyway).
2. Voting twice in an IP-limited poll. Or signing up twice for a forum. Etc.
3. Simply not wanting to be identified, perhaps pretending to be someone else.
4. Access content unavailable directly to the user, such as at a limited connection through school or work, or even a country.

A proxy may or may not be for a harmful reason, though frequently when there is some 'bad' activity involved, a proxy is as well, but that doesn't mean all people on proxies are trying to hack you or something.

It's not possible to tell that an IP address is a proxy for exactly the same reason that it is used. A proxy is the IP requesting and being sent data. The end. What this proxy does on the other end is up to it. In a sense, if you download a file and send it to a friend with an IM client, you're acting as a proxy. The word, in fact, just means 'bridge between', or something like that. From dictionary.com: "an ally or confederate who can be relied upon to speak or act in one's behalf."

However, there may be some lists of known proxies you can use and compare any IPs to, but this is just random chance as to whether it will find any matches or if they will be correct (as IP addresses change [at varying rates]).


One way to try to avoid proxies would be to force direct interaction with the user, through something like a java applet, etc. However, with an advanced enough proxy, even this could likely be tricked.

Twey
07-16-2007, 02:23 PM
It's not possible to tell that an IP address is a proxy for exactly the same reason that it is used.You can also check the X-Forwarded-For header (PHP: $_SERVER['HTTP_X_FORWARDED_FOR']). Most proxies will send this header, which contains the real IP address of the client, but proxies designed to be anonymous won't.

djr33
07-16-2007, 02:25 PM
It's a pretty stupid proxy if it does that. But, of course, you're a happy server-manager if you come across someone using one of those :p

Then again, this wouldn't be a problem for users just trying to get around a limitation of their connection, such as at a school, etc.

jass
07-16-2007, 02:27 PM
Is there a reliable proxy from US that I can use?

djr33
07-16-2007, 02:29 PM
Reliable for what?

Try a google search for 'anonymous'.

For your own server, if you want to play with something, try phproxy or cgiproxy (the latter being a bit harder to implement but with more features).

Twey
07-16-2007, 02:38 PM
It's a pretty stupid proxy if it does that.Why? Proxies have other purposes than anonymity. Most of the proxies you're likely to encounter (ISP-run transparent caches like those used by AOL or Virgin) will send this header.

djr33
07-16-2007, 02:51 PM
I suppose I was thinking of this in the sense that you would want to know if someone comes from a proxy only if you expect them to differ from other users. In the cases noted above, it doesn't seem there would be much reason to differentiate the vistitors.

Jeff67
07-23-2007, 06:58 AM
The only reasonably accurate proxy list I know is what MaxMind has. But their services are, for the most part, pay services. However, if a person creates a proxy only for their own use (doesn't make it public) and uses other cloaking methods, it still might not get detected.

If you want to learn more, here are a couple of links:

http://www.maxmind.com/app/proxy
http://www.maxmind.com/app/ipauthentication

But in particular the "IP Address Location with GeoIP" and "Benefits of GeoIP/User Entered Information" sections at:
http://www.maxmind.com/app/ip-location-explained