It's not really possible to get a real IP in most cases as majority of proxies block it and don't pass through the user's real IP address. It's not worth going through a proxy and clicking your own ad for the most part. (1) if you get caught, you're fucked and you get $0. (2) in most cases, sites that make any real revenue, a few extra clicks a day doesn't mean shit. When they check and see that the same 15 IPs click the ads every single day, they may start to notice. Short version: not worth the risk.
with java you can get the IP address on the persons machine. I used to have a site bookmarked that would check. If you were using a good proxy, they couldn't get it, but if it was just a web proxy, it was very easy to get. Ill try to find the page
here is the checker i was thinking about. Its more for finding your address through a non web based proxy. I tried it through one web based proxy and it locked up my browser. stayinvisible.com/cgi-bin/iptest.cgi I guess if java is enabled through the web proxy, its possible, if not, you wouldnt be able to get the IP
ssl proxy would probably be considered a high anonymity proxy. It does depend on the settings of the proxy though. I think there are testers out there to test it.
this is the script i use to check them <?php //check connect through proxy or not $proxydescription = ""; $remoteaddr = $_SERVER['REMOTE_ADDR']; $http_via = getenv('HTTP_VIA'); $http_forwarded = getenv('HTTP_X_FORWARDED_FOR'); $remoteport = getenv('REMOTE_PORT'); //no proxy or elite proxy if($http_via == NULL && $http_forwarded == NULL){ $remote = $remoteaddr; $proxyip = $remoteaddr; $hostname = gethostbyaddr($remoteaddr); $proxyhostname = gethostbyaddr($remoteaddr); $proxydescription = "$remoteaddr Elite Proxy"; }else if(strcmp($remote, $http_via) == 0 && strcmp($http_forwarded, $http_via) != 0){ //Transparent Proxy or proxy with ip forwarding $remote = $http_forwarded; $proxyip = $remoteaddr; $hostname = gethostbyaddr($http_forwarded); $proxyhostname = gethostbyaddr($remoteaddr); $proxydescription = "$remoteaddr Transparent Proxy"; }else{ //Highly Anonymous Proxy case $remote = $remoteaddr; $proxyip = $remoteaddr; $hostname = gethostbyaddr($remoteaddr); $proxyhostname = gethostbyaddr($remoteaddr); $proxydescription = "$remoteaddr Anonymous Proxy"; } print $proxydescription; ?> Code (markup):
btw here one usefull function: http://www.phpinform.com/2009/06/27/get-real-ip-address-if-user-has-transportent-proxy/