我正在寻找一个解决方案,以了解使用asp.net网站的用户的MAC号码。我知道你可以得到一个IP地址(不知道为什么,但它不能复杂)但我能找到具有IP的MAC地址吗?
编辑:我的意思是在.NET中以编程方式(非手动)
答案 0 :(得分:4)
IP地址是在请求信息的客户端系统和服务器之间路由通信所必需的。您可以得到它,因为IP地址是从TCP / IP堆栈中的较低级别提取的(我相信级别3)。 MAC地址对于任何这些都不是必需的,因此它不包括在客户端和服务器之间的通信中。
答案 1 :(得分:2)
没有机会得到这个抱歉。
即使您可以尝试获取此功能也没有意义,当我访问互联网上的网站时,我的MAC地址永远不会离开我的家庭网络。
好的,如果用户在同一个局域网上,例如在公司内部网中说这可以通过使用IP地址和使用命令行工具(如arp)来确定。
ARP代表地址解析协议,当只知道其Internet层(IP)或其他网络层地址时,它可用于查找主机的链路层(硬件)地址。
答案 2 :(得分:2)
如果您的网站是可信任的,您可以在IE中执行此操作:
http://www.devarticles.com/c/a/JavaScript/Advanced-JavaScript-with-Internet-Explorer-Retrieving-Networking-Configuration-Information/1/
我不希望它适用于任何典型的访问者,只是您已经控制过的系统的用户,例如本地网络上的用户。如果您可以找到使用CoCreateGuid生成guid的公共activex,则IE中可能存在第二种方式。它返回部分guid中的mac地址。我不打赌找到一个通常安装的。
答案 3 :(得分:1)
Java 6有NetworkInterface#getHardwareAddress()
方法,通常返回相关计算机的MAC地址。您可以创建一个小型Java小程序来与您的Web服务器通信以获取MAC地址,尽管存在欺骗MAC地址的方法和手段。
答案 4 :(得分:1)
您获得的MAC地址可能不实用。如果有人有多个网络适配器,那么他们也有多个MAC地址。并且有人拥有两个网络并不罕见。 (例如,蓝牙,普通有线和WiFi已经是三个。)
MAC地址仅用于识别,可以请求。为此目的创建了地址解析协议。通过arping,您可以获得MAC地址。不幸的是,这只适用于本地网络,而不适用于Internet。我认为通过使用IPv6,您可能还有一些选择。虽然我认为它仍然仅限于本地系统。
获取访问者的MAC地址可能被认为是不合适的,甚至可能是犯罪行为,因为MAC地址通常用作唯一标识符。这些信息可能被黑客滥用,特别是当黑客设法获得对用户网络的物理访问时。这将允许他冒充用户。您的网站可能会让一些安全专家非常不满......
在http://www.ipaddresslocation.org/find-mac-address.php,他们声称可以使用Java applet。但是,它不适用于我的Google Chrome系统。
答案 5 :(得分:0)
我遇到了类似的问题(我使用客户端设备MAC地址作为在不同设备上定位不同内容的密钥)。这个帖子很有用。鉴于似乎无法隐式执行此操作,我将MAC地址作为客户端传递给Web服务的参数之一。
(N.B。这不是一般性答案,只有在客户端和服务器紧密集成以及可以通过调用传递数据的范围时才有意义。)
答案 6 :(得分:-5)
我认为这在任何平台上都不可能。