boost asio TCP 服务器必须绑定到 IP 地址
boost asio TCP server must bind to an IP address?
我不确定我是否正确使用了 BOOST ASIO,我的代码如下,
boost::asio::ip::tcp::resolver resolver(io_);
boost::asio::ip::tcp::resolver::query query(std::string("127.0.0.1"), port);
boost::asio::ip::tcp::endpoint endpoint = *resolver.resolve(query);
acceptor_.open(endpoint.protocol());
它绑定到 127.0.0.1。当客户端进行外部连接时,客户端使用的是 IP 地址 192.168.0.107 或类似内容。BOOST ASIO实现的服务器只是简单地拒绝客户端连接。
那么有没有办法解决这个问题呢?我认为对于 apache2,apache2 不需要绑定到特定的 IP,来自任何服务器接口(前提是有多个接口)的任何客户端请求都可以连接到 apache2。
有没有办法解决它?或者没有办法,我必须修复服务器外部 IP?
谢谢。
绑定到0.0.0.0
.这是在所有接口上侦听任何传入连接的"通配符"。
如果绑定到 127.0.0.1
,服务器将只接受通过环回的传入连接,这将不允许客户端连接(因为客户端未使用环回)。
您可以创建一个终端节点来侦听任何 IP,如下所示:
boost::asio::ip::tcp::endpoint ep(boost::asio::ip::tcp::v4(), listen_port );
相关文章:
- 我想将一个对T类型的非常量左值引用绑定到一个T类型的临时值
- 在基于范围的for循环中使用结构化绑定声明
- 使用 LuaBridge 将 LuaJIT 绑定到C++会导致"PANIC: unprotected error"
- 尝试通过OCI例程从Oracle获取blob数据,但出现错误:ORA-01008:并非所有变量都绑定
- 在使用GPU支持编译Tensorflow时,会遇到CUDA_TOOLKIT_PATH未绑定变量
- 视觉studo 2019中的漫画和静态/动态绑定
- 将自由函数绑定为类成员函数
- 将常量指针引用绑定到非常量指针
- 在派生类中绑定非静态模板化成员函数
- 绑定派生类方法C++从实例范围之外的分隔 std::function 变量调用
- 在 openGL 中多次绑定缓冲区
- 定义有趣的宏和正则表达式在Z3 C++绑定
- 如何使用 Poco::Net::HTTPSClientSession 绑定特定的源 IP 地址
- 将套接字绑定到具有未知 IP 的特定接口
- 任何ip和本地ip绑定
- 是否有可能绑定和监听一个IP地址与TCP/IP套接字?(Linux / C)
- 我可以将任意源 IP 绑定到套接字吗?
- C++套接字编程 - 查找客户端计算机 IP、TrueIP 和绑定端口
- boost asio TCP 服务器必须绑定到 IP 地址
- Windows套接字无法绑定VPN IP地址