Acabo de probar tu código y la función trabaja bien. Vas a tener que buscar en otra parte.
Por cierto no es necesario que hagas if else, recuerda que en el momento que hagas el return sales de la función.
Código PHP:
Ver originalfunction get_real_ip()
{
if (isset($_SERVER["HTTP_CLIENT_IP"])) { return $_SERVER["HTTP_CLIENT_IP"];
}
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) { return $_SERVER["HTTP_X_FORWARDED_FOR"];
}
if (isset($_SERVER["HTTP_X_FORWARDED"])) { return $_SERVER["HTTP_X_FORWARDED"];
}
if (isset($_SERVER["HTTP_FORWARDED_FOR"])) { return $_SERVER["HTTP_FORWARDED_FOR"];
}
if (isset($_SERVER["HTTP_FORWARDED"])) { return $_SERVER["HTTP_FORWARDED"];
}
return $_SERVER["REMOTE_ADDR"];
}
$dir_ip = get_real_ip();