Pues la función parece funcionar bien. Es más .. evalua todos los casos posible para obtener la "IP" real del usuario (aunque este pase por un proxy).
En ningú caso se usan variables de servidor (entorno?) que tengan que ver con tu servidor. Todas son referentes a tu cliente conectado (por supuesto si usas tu PC como servidor y cliente . .te va a dar la IP tuya ..)
Lo más básico (si usas PHP 4.1.0 en adelante) .. para obtener la IP de un cliente conectado a tu script sería:
Código PHP:
echo $_SERVER['REMOTE_ADDR'];
(siempre y cuando tu cliente no pase por un proxy tipo "el de telefónica - españa")
Un saludo,