可能重复:
获取 ASP.NET 网站用户的 MAC
我正在开发一个本地 Web 应用程序。我需要获取访问该网站的客户端 PC 的 Mac id。该站点是本地的,因此我可以安装一些 dll 或库,但我仍然需要 mac 地址。我搜索了它,但没有任何解决方案。请帮忙。
可能重复:
获取 ASP.NET 网站用户的 MAC
我正在开发一个本地 Web 应用程序。我需要获取访问该网站的客户端 PC 的 Mac id。该站点是本地的,因此我可以安装一些 dll 或库,但我仍然需要 mac 地址。我搜索了它,但没有任何解决方案。请帮忙。
简短的回答:在一般情况下这是不可能的。MAC 地址是 TCP 堆栈的硬件层详细信息,本地子网的 DCHP 服务器以外的远程计算机不需要知道该地址。它实际上是一个广为人知的客户端 MAC 的安全漏洞。
您可以使用通过 Page.Request 属性获得的 HttpRequest 实例获取远程 HTTP 客户端的 IP 地址。如果该地址恰好在同一个子网中,您可以使用命令行工具或通过“嗅探”DHCP 数据包(广播到网络上的所有计算机)让机器报告其 MAC 地址建立自己的 MAC 地址数据库;但是,除了 IPCONFIG(不能用于询问其他计算机)之外,任何 Windows 工具都不会根据请求提供此信息。