3

如何在C#中获取外部IP的mac地址?例如我想找到“204.13.153.34”的mac地址?

任何想法和代码片段都受到高度赞赏?提前致谢

4

4 回答 4

3

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

您无法确定不同网段中机器的 MAC 地址。使用 ARP,如果机器恰好在同一网段中,您可以找出给定 IP 地址的 MAC 地址。这就是IP堆栈正在做的事情。它通过 ARP 向负责处理 IP 地址数据包的“网络”询问,因为以太网卡只知道 MAC 地址。

于 2010-07-15T09:26:54.540 回答
1

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

编辑:

这看起来可能有助于检索 MAC 地址

编辑:如果没有本地 LAN 访问权限,您无法获取用户的外部 MAC 地址......除非:您可以访问一个好的 ARP 表并且只有当客户端直接连接到 php 服务器时(如果有路由器/ NAT 流量的网关,返回的 MAC 地址将是网关的 MAC 地址) -

它谈论 php,但 C# 的主体将是相同的

于 2010-07-15T09:21:15.150 回答
1

像@EricSchaefer answare 一样,您无法从不同的网段获取 MAC 地址。但是,如果它具有相同的网段,我已经回答了另一个问题

于 2019-01-26T15:33:35.327 回答
0

arp命令是 TCP/IP 的一部分(它代表地址解析协议),但它仅适用于 LAN 。

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

于 2010-07-15T09:28:37.457 回答