以独立于平台的方式从IP地址查找MacAddress

Ach*_* MP 5 ip macos cross-platform

我需要找到我的设备从中获取TCP请求的设备的mac地址,我将通过tcp端点获取设备的IP地址,但我需要找出设备的mac地址.我的应用程序将运行windows和linux都是如此,所以请建议我一个跨平台的方法来查找mac地址..任何boost库都会帮我做同样的事情吗?

Jer*_*myP 6

首先,您找不到不在同一局域网中的任何网络接口的MAC地址.该信息不会传输到路由器之外.

arp在Unix和Windows上都有一个名为的命令行工具,它将列出与您的PC通信的接口的IP地址和MAC地址.即

arp -a
Run Code Online (Sandbox Code Playgroud)

在Windows上提供如下内容:

Interface: 9.175.198.236 --- 0x2
  Internet Address      Physical Address      Type
  9.175.198.129         00-1b-53-46-fa-7f     dynamic
Run Code Online (Sandbox Code Playgroud)

在Unix上看起来像:

foo.bar.com (10.27.68.72) at 00:50:56:AE:00:0B [ether] on eth0
baz.bar.com (10.27.68.77) at 00:50:56:AE:00:10 [ether] on eth0
? (10.27.68.1) at 00:50:5A:1B:44:01 [ether] on eth0
Run Code Online (Sandbox Code Playgroud)

您可以尝试调用它并以编程方式解析输出.