Encontrar la IP real de un visitante
Intenta conocer la IP real de un visitante aunque se encuentre tras un proxy
/** * function ip (void) * * devuelve la IP de un usuario remoto * * return string */ function ip () { $s_hxff = $_SERVER['HTTP_X_FORWARDED_FOR']; $s_ra = $_SERVER['REMOTE_ADDR']; $e_ra = $_ENV['REMOTE_ADDR']; if ($s_hxff) { // los proxys van añadiendo al final de esta cabecera // las direcciones ip que van "ocultando". Para localizar la ip real // del usuario se comienza a mirar por el principio hasta encontrar // una dirección ip que no sea del rango privado. En caso de no // encontrarse ninguna se toma como valor el REMOTE_ADDR // http://www.faqs.org/rfcs/rfc1918.html '/^(00)?0\./', '/^127\.(00)?0\.(00)?0\.(00)?1/', '/^192\.168\..*/', '/^172\.0?((1[6-9])|(2[0-9])|(3[0-1]))\..*/', '/^0?10\..*/' ); if ($client_ip != $found_ip) { $client_ip = $found_ip; break; } } } } }
En PHP ip real por Lito hace on 4/2/08 | Comentarios
