http

说说php获取Client MAC

一开始我还认为php完全是可以获取到client的mac的,很是荒谬。最后还被云舒鄙视了一番。

这完全不可能的。php是不可能直接获取到client的mac的。

首先php完全就是在服务端解释执行的,所以没可能直接获取到浏览端的网卡MAC,因为浏览器默认行为是不会把MAC发送出去的。

要是从数据包的角度来解释的话,一般都是在局域网内部传输时才会包上MAC头,经过路由不断转发,实际上每经过一级设备都被剥去一层,到最后就只剩下TCP/IP的数据头和数据了。MAC只可能是在网络底层的物理层中传输。(也就是说client的mac地址信息是不可能在公网上传输的,公网上的MAC信息是最后一跳设备的接口MAC,Hell-Phantom评论)

从http协议来讲,也是不可能的。http请求中也不可能带上mac地址。可以看看http协议的相关说明

所以说php是不可能直接获取到client的mac地址的,php要想得到client的MAC地址,得用到第三方的ActiveX或是用js等。PS:http://www.kenes.com.cn/MAC.html

关键词: http , client , php