使用PHP或javascript获取客户端的ip和mac地址

使用PHP或javascript获取客户端的ip和mac地址,javascript,php,Javascript,Php,我试图使用PHP获取客户端的IP和MAC地址,但我无法获取。我尝试了下面的代码,但它给出了错误的MAC地址- ob_start(); // Turn on output buffering system(‘ipconfig /all’); $mycom=ob_get_contents(); // Capture the output into a variable ob_clean(); // Clean (erase) the output buffer $findme = "Physical

我试图使用PHP获取客户端的IP和MAC地址,但我无法获取。我尝试了下面的代码,但它给出了错误的MAC地址-

ob_start(); // Turn on output buffering
system(‘ipconfig /all’);
$mycom=ob_get_contents(); // Capture the output into a variable
ob_clean(); // Clean (erase) the output buffer
$findme = "Physical";
$pmac = strpos($mycom, $findme);
$mac=substr($mycom,($pmac+36),17); // Get Physical Address

正如在这个问题上的评论所说,由于PHP在服务器上运行,您将无法获得客户端MAC,但是您可以通过检查
$\u server['REMOTE\u ADDR']
获取客户端IP,或者如果用户在代理之后,您可以使用
$\u server['HTTP\u X\u FORWARDED\u']

正如许多用户所提到的,不可能获得用户
MAC\u地址。要获取用户ip,请尝试以下操作

function getUserIP()
{
    if (!empty($_SERVER['HTTP_CLIENT_IP']))   //check ip from share internet
    {
      $ip=$_SERVER['HTTP_CLIENT_IP'];
    }
    elseif (!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;
}

@Archer对我来说,OP似乎在试图获得服务器MAC addy(因为他正在发布
ipconfig
),你在哪里看到客户端?@kayes我的错误,如果是一个。一提到Javascript,我就想到客户端。不是你吗?@Archer OP可能对措辞感到困惑,可能值得要求更正,但是代码是PHP,所以我假设它可能只是服务器端。@Kayes我们在这里都做了假设。OP,这是您想要的服务器mac地址还是客户端mac地址?相关且可能重复的:和。