Getting real IP address in PHP

Post Date: Nov 16 2008
Total Visit: 6315

Generally you have use $_SERVER['REMOTE_ADDR'] to find out the client's IP address in PHP. But it may not return the true IP address of the client at all time. If your client is connect to the Internet through Proxy Server then $_SERVER['REMOTE_ADDR'] in PHP just returns the IP address of the Proxy Server not of the client's machine. So here is a simple function in PHP to find out the real IP address of the client's machine. There are extra Server variable which might be available to determine the exact IP address of the client's machine in PHP, they are HTTP_CLIENT_IP and HTTP_X_FORWARDED_FOR.

Simple function to find real IP address in PHP

function get_real_ip_addr()
{
if(!empty($_SERVER['HTTP_CLIENT_IP']))   //check ip from share internet
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
else if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))   //to check ip is pass from proxy
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}

Here above function return true IP address of client's machine using PHP. For this first of all check IP address of the client machine, if it is false then it will check IP Address is pass from proxy, if yes then it will return otherwise it will return remote computer IP address.

Tags: IP PHP, IP address in PHP, Getting real IP address in PHP Bookmark and Share

To do articles more effectively, we need your comments or suggestions on how to improve the articles and make it more useful, or what other articles you would like in the future. Please CLICK HERE and leave your feedback. Thanks!!!