内网的,其实也会有点用吧~
我知道某些大学,出口的ip就那么几个,而几k上网学生,都是用诸如192.168的来上的,如果可以得到,还能知道哪些宿舍的.
呵呵,当然,看你需要不需要了

解决方案 »

  1.   

    一个$_SERVER['REMOTE_ADDR']就够了吗?我看PHPBB的代码是下面这一大段:
    可是就是不知道是什么意思,哪位能给解释一下啊 ?谢谢了!
    -------------------------------------------------------------------------------
    if( getenv('HTTP_X_FORWARDED_FOR') != '' )
    {
    $client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR ); $entries = explode(',', getenv('HTTP_X_FORWARDED_FOR'));
    reset($entries);
    while (list(, $entry) = each($entries)) 
    {
    $entry = trim($entry);
    if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", $entry, $ip_list) )
    {
    $private_ip = array('/^0\./', '/^127\.0\.0\.1/', '/^192\.168\..*/', '/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/', '/^10\..*/', '/^224\..*/', '/^240\..*/');
    $found_ip = preg_replace($private_ip, $client_ip, $ip_list[1]); if ($client_ip != $found_ip)
    {
    $client_ip = $found_ip;
    break;
    }
    }
    }
    }
    else
    {
    $client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR );
    }
    $user_ip = $client_ip;
      

  2.   

    你不试着打印一下$_SERVER['REMOTE_ADDR']就知道了,看看是不是自己机子的IP喽。
      

  3.   

    function getIp() {
      $ip1 = getenv("REMOTE_ADDR")?getenv("REMOTE_ADDR"):"none";
      $ip2 = getenv("HTTP_X_FORWARDED_FOR")?getenv("HTTP_X_FORWARDED_FOR"):"none";
      $ip3 = getenv("HTTP_CLIENT_IP")?getenv("HTTP_CLIENT_IP"):"none";
      if (isset($ip1) && $ip1 != "none" && $ip1 != "unknown") {
       return $ip1;
      }
      elseif (isset($ip2) && $ip2 != "none" && $ip2 != "unknown") {
       return $ip2;
      }
      elseif (isset($ip3) && $ip3 != "none" && $ip3 != "unknown") {
       return $ip3;
      }
      else {
      return "none";
      }
    }
      

  4.   

    echo $_SERVER['REMOTE_ADDR'];
    可能只是取得对方的网关IP(代理),如果对方用了代理上网的话。
    参数改为HTTP_X_FORWARDED_FOR则可能取得对方的代理IP和真实的IP,但也不是绝对……
      

  5.   

    公网的很容易取到!内网的要采用ACTIVEX,用VB写个ACTIVEX很简单的!
    呵呵!