gpt4 book ai didi

c++ - 以 posix 方式绑定(bind)到特定的 NIC

转载 作者:行者123 更新时间:2023-11-28 03:54:12 24 4
gpt4 key购买 nike

我的机器上有 3 个网络接口(interface) (eth0-2),每个接口(interface)都有自己的网络子网 192.168.10.,192.168.20.,192.168.30.。我想知道使用 BSD 套接字的人如何在特定 NIC 的端口上监听,例如在 eth1(192.168.20.)的端口 10000 上监听,目前我得到的似乎是列表/绑定(bind)仅限 eth0。我目前使用的操作系统是 Ubuntu,但我希望该解决方案能够在任何 posix 系统上运行/可移植。

附带说明一下,我正在用 C++ 开发我的应用程序,希望能提供一些有关 C++ 网络库的指导,我看过 Qt,但该许可证不适合我正在做的开发类型.

最佳答案

bind() 系统调用允许您指定绑定(bind)套接字的地址。您可以绑定(bind)到特定地址,也可以绑定(bind)到 INADDR_ANY,它将监听所有传入地址,而不管接口(interface)如何。

至于网络库,boost::asio 不错。当然,您可能希望指定比“网络库”更多的要求以获得更好的推荐。

关于c++ - 以 posix 方式绑定(bind)到特定的 NIC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4264340/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com