首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >客户端MAC地址

客户端MAC地址
EN

Stack Overflow用户
提问于 2013-11-29 23:30:46
回答 2查看 27.6K关注 0票数 0

我正在寻找一个解决方案为一个基于php的网页来获得MAC地址。我正在运行的appache服务器,服务器是在同一个网络中的客户端.Are有什么建议吗?

EN

回答 2

Stack Overflow用户

发布于 2013-11-29 23:32:57

mac地址可以配置,因此它不是身份。请勿使用网络地址信息进行身份验证或标识,切勿使用。

但是,您可以在应用程序中仅出于信息目的(与安全无关)使用mac地址,因此我将解释如何获取它(在Linux上)。

首先,客户端的mac地址在php全局变量中是不可用的,比如REMOTE_ADDRESS (客户端的IP地址)。您需要使用arp命令自行解决此问题。arp可以输出系统的ARP表并对其进行修改。要将IP解析为mac地址,请使用以下命令:

代码语言:javascript
复制
arp -a IP

回到PHP。我们需要调用上面的命令,将客户端的IP地址传递给它:

代码语言:javascript
复制
$ip  = $_SERVER['REMOTE_ADDRESS'];
// don't miss to use escapeshellarg(). Make it impossible to inject shell code
$mac = shell_exec('arp -a ' . escapeshellarg($ip));

// can be that the IP doesn't exist or the host isn't up (spoofed?)
// check if we found an address
if(empty($mac)) {
    die("No mac address for $ip not found");
}

// having it
echo "mac address for $ip: $mac";
票数 4
EN

Stack Overflow用户

发布于 2013-11-29 23:34:17

你可以ask for MAC adress,它可以调整;你也可以要求client ip,但它可能每次都会改变。

除非你在一个完全受控的局域网中,否则只需管理帐户身份验证!

甚至,如果您是在局域网中,客户端可能会得到一个静态ip,这将由...好的,到目前为止。我认为这可能会产生OSI层模型的东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20289040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档