CodeIgniter Forums
Get real ip - Printable Version

+- CodeIgniter Forums (https://forum.codeigniter.com)
+-- Forum: Using CodeIgniter (https://forum.codeigniter.com/forumdisplay.php?fid=5)
+--- Forum: General Help (https://forum.codeigniter.com/forumdisplay.php?fid=24)
+--- Thread: Get real ip (/showthread.php?tid=71743)



Get real ip - omid_student - 09-18-2018

Hi
I try use
PHP Code:
    function get_user_ip() {

        
$ipaddress '';

        if (
getenv('HTTP_CLIENT_IP'))
            
$ipaddress getenv('HTTP_CLIENT_IP');
        else if(
getenv('HTTP_X_FORWARDED_FOR'))
            
$ipaddress getenv('HTTP_X_FORWARDED_FOR');
        else if(
getenv('HTTP_X_FORWARDED'))
            
$ipaddress getenv('HTTP_X_FORWARDED');
        else if(
getenv('HTTP_FORWARDED_FOR'))
            
$ipaddress getenv('HTTP_FORWARDED_FOR');
        else if(
getenv('HTTP_FORWARDED'))
           
$ipaddress getenv('HTTP_FORWARDED');
        else if(
getenv('REMOTE_ADDR'))
            
$ipaddress getenv('REMOTE_ADDR');
        else
            
$ipaddress 'UNKNOWN';

        if (
$ipaddress == '::1' || $ipaddress == 'localhost')
            
$ipaddress  =   '151.235.98.154';

        if (
strpos($ipaddress,',') !== FALSE) {
            
$ipaddress  =   explode($ipaddress)[0];
        }

        return 
$ipaddress;

    } 

But it get 159.69.37.104,159.69.37.14
But i need real ip
Please help me


RE: Get real ip - Pertti - 09-18-2018

Have a look if the correct values appear in $_SERVER variable, anywhere.

Built in ip_address function was relatively good too - https://www.codeigniter.com/user_guide/libraries/input.html#CI_Input::ip_address

If you use more advanced set up, I remember our loadbalancer masking real IPs sometimes until sys admin changed config to pass real user IP when request was sent to different web server instances.


RE: Get real ip - omid_student - 09-18-2018

Oh yes ip_address exist in codeigniter
Thanks