2010-07-15 109 views

回答

3

您应该阅读地址解析协议。

无法确定不同网段中机器的MAC地址。使用ARP,如果机器碰巧在同一个网段中,您可以计算出给定IP地址的MAC地址。那就是IP堆栈正在做什么。它通过ARP来询问“网络”,因为以太网卡只知道MAC地址,所以它可以处理IP地址的数据包。

+1

+ 1 - 我同意你的看法 – ChrisBD 2010-07-15 09:37:22

1

我不认为这是可能的,除非你写另一端发送给你的东西吗?

编辑:

这看起来似乎能够帮助Retrieve MAC Address

编辑: 无需本地LAN访问它们你不能得到用户的外部MAC地址...除非:你可以访问一个良好的ARP表,并且只有当客户端直接连接到php服务器时(如果有路由器/网关NAT流量,返回的MAC地址将是网关的地址) - Source

它谈论的是PHP,但委托人将C#相同。

+0

我试过从iphlpapi.dll SendARP,但那也行不通:( – 2010-07-15 09:23:21

+0

啊在那种情况下忽略我的编辑 – w69rdy 2010-07-15 09:27:19

+0

+1 - 我同意你的意见。你必须发布,而我正在键入我的答案。:) – ChrisBD 2010-07-15 09:38:07

0

arp命令这是TCP/IP(它代表地址解析协议)的一部分,但它只能在局域网上工作。

我不认为你可以通过互联网做你想做的事。正如您刚刚获得第一个节点的MAC一样。