boost asio iostream - 如何获取本地IP地址

时间:2012-06-24 18:40:19

标签: c++ boost ip boost-asio local

这是我的问题: 我正在使用boost :: asio :: ip :: tcp :: iostream来连接服务器:

boost::asio::ip::tcp::iostream s(IP, "1237");

现在我想要检索自己的本地IP地址。我已经在谷歌的深处发现了如何用socket来做这件事,但是一个流呢? 我希望由于tcp :: iostream构建在套接字的顶部,它应该是这样的: s.local_endpoint()。地址() 但经过与google和duckduckgo的长时间搜索,我发现没有任何线索如何做到这一点。我尝试了几种最明显的排列,但仍然没有运气。 那么,有没有简单的方法来做,或者我必须使用套接字? 如果它很重要,它只需要在Linux上工作。

1 个答案:

答案 0 :(得分:1)

假设Linux,使用getifaddrs(3)获取本地系统的接口列表。