http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=19325

解决方案 »

  1.   

    PHP中怎样来访获得IP地址?  
    ---------------------------------------------------------------  
     
    <?//补充一下,有时候$REMOTE_ADDR;并不一定是你真是的ip  
    //用HTTP_X_FORWARDED_FOR更真实一些  
    if  (getenv(HTTP_X_FORWARDED_FOR))  {  
    $ip  =  getenv('HTTP_X_FORWARD_FOR');  
    $host  =  gethostbyaddr($ip);  
    }  else  {  
    $ip  =  getenv('REMOTE_ADDR');  
    $host  =  gethostbyaddr($ip);  
    }?>  
    ---------------------------------------------------------------  
     
    echo  gethostbyname("www.csdn.net")."<br>"  
    ---------------------------------------------------------------  
     
                           //  取得客户IP  
                           function  get_client_ip()    
                           {  
                                       global  $_SERVER;  
                                       if  (isset($_SERVER["HTTP_X_FORWARDED_FOR"]))    
                                       {  
                                                   $realip  =  $_SERVER["HTTP_X_FORWARDED_FOR"];  
                                       }  
                                       elseif  (isset($_SERVER["HTTP_CLIENT_IP"]))    
                                       {  
                                                   $realip  =  $_SERVER["HTTP_CLIENT_IP"];  
                                       }  
                                       else    
                                       {  
                                                   $realip  =  $_SERVER["REMOTE_ADDR"];  
                                       }  
                                       return  $realip;              
                           }  
    ---------------------------------------------------------------  
     
    好象都很全面啊。  
    简单点  getenv('REMOTE_ADDR');