如何在C#中获取外部IP的mac地址? E.g我想找到“204.13.153.34”的mac地址?
任何想法和代码段都受到高度赞赏? 在此先感谢
答案 0 :(得分:3)
您应该阅读有关地址解析协议的内容。
您无法确定其他网段中计算机的MAC地址。使用ARP,如果机器恰好位于同一网段,您可以计算出给定IP地址的MAC地址。这就是IP堆栈正在做什么。它通过ARP询问“网络”是否有责任处理IP地址的数据包,因为以太网卡只知道MAC地址。
答案 1 :(得分:1)
除非你在另一端发一些东西发给你,否则我认为这是不可能的?
修改强>
这似乎可以帮助Retrieve MAC Address
修改: 如果用户没有本地局域网访问权限,就无法获得用户的外部MAC地址...除非你有权访问一个好的ARP表,并且只有当客户端直接连接到php服务器时(如果有路由器/网关那么NAT流量,返回的MAC地址将是网关的地址) - Source
它谈论的是php,但C#
的主体是相同的答案 2 :(得分:0)
arp 命令是TCP / IP的一部分(它代表地址解析协议),但它只能在LAN上运行。
我认为你不能通过互联网做你想做的事。因为你将获得第一个节点的MAC。
答案 3 :(得分:0)
就像@EricSchaefer一样,您无法从不同的网段获取MAC地址。但是,如果它具有相同的网段,我已经在another questions
了