【发布时间】:2015-05-29 16:48:41
【问题描述】:
我不熟悉网络等,所以我不知道如何使用它,所以如果有人可以帮助我如何获得我的计算机的 IP 地址,我也必须获得 MAC 地址。
【问题讨论】:
-
getaddrinfo()不适合你?
标签: c++ macos ip ip-address winsock
我不熟悉网络等,所以我不知道如何使用它,所以如果有人可以帮助我如何获得我的计算机的 IP 地址,我也必须获得 MAC 地址。
【问题讨论】:
getaddrinfo() 不适合你?
标签: c++ macos ip ip-address winsock
WinSock 是一个特定于 Windows 的 API。大多数套接字 API 通常不提供有关本地 IP/MAC 地址的信息。您也许可以使用getaddrinfo() 来查询localhost 的IP 地址,但这将取决于具体实现是否有效,而且无论如何它不会包含MAC 地址。 p>
在 Windows 上,获取本地机器的 IP 和 MAC 地址的正确方法是使用 GetAdaptersInfo() 或 GetAdaptersAddresses() 枚举本地 NIC。
在基于 POSIX 的平台上,包括 OSX,您可以使用 getifaddrs() 获取本地 IP 地址(family AF_INET/6)和 MAC 地址(family AF_LINK)。
【讨论】: