如何通过知道PHP中的mac地址获取远程端点的IP地址?

时间:2014-07-15 10:19:55

标签: php ip-address

我尝试了类似这样的东西,这对我不起作用。

<?php 
$ip = getenv("REMOTE_ADDR") ;
Echo "Your IP is " . $ip;
?>

2 个答案:

答案 0 :(得分:1)

您无法将MAC解析为IP。 MAC用于ARP-Layer,仅适用于本地LAN。 MAC绑定到网络适配器/设备。在此设备上,您可以为IP协议分配多个IP地址。

你在谈论MAC吗? 它们看起来像00-50-56-C0-00-08 有时也用“:”分隔

评论后更新: 您无法将MAC解析为IP。 你可以尝试一些技巧。 如果当前PC与该设备有联系,则IP可以存储在ARP缓存中。 如果您正在使用DHCP服务器,那么另一个技巧是,如果将IP分配给该MAC,则可以查询此服务器。

答案 1 :(得分:-1)

试试这个

if($_SERVER["HTTP_X_FORWARDED_FOR"] != ""){
  $IP = $_SERVER["HTTP_X_FORWARDED_FOR"];
  $proxy = $_SERVER["REMOTE_ADDR"];
  $host = @gethostbyaddr($_SERVER["HTTP_X_FORWARDED_FOR"]);
}else{
  $IP = $_SERVER["REMOTE_ADDR"];
  $proxy = "No proxy detected";
  $host = @gethostbyaddr($_SERVER["REMOTE_ADDR"]);
}