获取远程主机的MAC地址

时间:2009-07-07 13:50:49

标签: c# .net asp.net mac-address

我刚才看到了寻找远程主机MAC地址的请求。答案是MAC地址始终作为TCP / IP协议的一部分发送。

如何从ASP.NET C#应用程序中检索此信息?

请参阅:Reference to sister-post

5 个答案:

答案 0 :(得分:13)

任何这样的答案都是错误的。适配器的MAC地址仅在同一网段上可用。不在路由器的另一端。

答案 1 :(得分:5)

如果您的远程设备已启用SNMP,则可以查询其ARP缓存。那将有MAC地址。有关详细信息,请参阅this FAQ entry

答案 2 :(得分:4)

简单回答:你做不到。

复杂的答案:你可以,但你需要阅读“arp -a”命令的输出。这可能会变得困难,具体取决于您当前通过NIC(无线或有线)连接的数量。

答案 3 :(得分:1)

我能想到从网络本身获取此信息的唯一方法取决于使用SNMP或RMON与网络管理软件连接。目前,我在客户端上使用Java Applet(请参阅我的answer to the other question),但它有一些限制。我希望与我们的网络工程师见面,看看是否有办法通过询问网络交换机获得相同的服务器信息。如果存在这样的解决方案,它可能特定于您运行的任何网络管理软件。

答案 4 :(得分:0)

您可以将其构建到应用程序本身,并让应用程序在其可能已发送的任何消息中发送mac地址。除此之外,约翰钉了它。

编辑:哦,如果这是一个“网络应用程序”而“客户端应用程序”是一个浏览器,是的,不要去。