2010-07-19 39 views
1

出于验证的目的,有没有办法在用户的网页上注册时检测用户的MAC地址?我更喜欢LAMP方法,但也可以使用ASP.NET的可能性。检测MAC地址? - 通过浏览器,没有插件

+0

岂不MAC地址是在TCP协议栈?在这种情况下,忘记一个简单的PHP解决方案。 – 2010-07-19 05:23:23

+2

你需要一个非常好的理由来处理网页上的MAC地址。 – casablanca 2010-07-19 05:42:42

+0

你究竟在做什么?为什么MAC地址具体?为什么不使用他们的IP地址?或者,更好的是,使用cookies。 – 2010-07-19 05:46:45

回答

8

我猜你可以通过读取底层操作系统的ARP缓存,假设客户端和服务器在同一个网络上。

然而,使用MAC地址验证是在大多数情况下一个坏主意

  • MAC地址可以很容易地spoofed。许多网络驱动程序允许您将地址设置为任何您想要的。

  • MAC地址是link local。如果服务器和客户端之间至少有一台路由器,则服务器将看到最近的路由器MAC地址。

+0

我想它似乎检测MAC地址的唯一方法是使用客户端插件。最初的想法是尝试使用它作为逐个设备的验证 - 用于许多用户将使用相同的本地WiFi /相同IP地址的用例。 – ina 2010-07-19 06:02:16

+0

我建议使用常规的基于cookie的会话,SSO(或用户+密码)框架或客户端证书。哪一个最好取决于你的情况和环境。 尝试在重新发明车轮之前使用通用且经过验证的技术。这是非常值得的努力。 – 2010-07-19 06:11:59

+0

好吧,还有一个验证问题。每个用户一个帐户 - 基于cookie的会话,他们可以注销,并创建一个新帐户...或使用不同的浏览器。 – ina 2010-07-19 06:32:27

0

试图检测MAC地址不是一个好主意。

但是,您可以使用Java Applet来完成此操作。用户将不得不允许它运行。

的Java小程序可以嵌入任何网页

这里是你如何做到这一点http://techdetails.agwego.com/2008/02/11/37