关于asio socket客户端指定某个端口连接服务器的问题

gimy007 2011-07-07 09:23:14
服务端的端口是确定的,客户端会随机分配一个端口与服务端端口建立SCOKET连接;

现在的问题是由于防火墙,我客户端的端口只能是某个特定的端口与服务器建立连接。

这是代码

-----------------------------
boost::asio::io_service io_service;
tcp::resolver resolver(io_service);
tcp::resolver::query query(sIP.c_str(), sPort.c_str());//这是绑定对端服务端地址端口的
tcp::resolver::iterator endpoint = resolver.resolve(query);
boost::system::error_code error = boost::asio::error::host_not_found;
sock = new tcp::socket(io_service);
sock->connect(*endpoint, error);
-----------------------------------

请教各位达人,要怎么搞?
...全文
210 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
gimy007 2011-07-07
  • 打赏
  • 举报
回复
我下了,没找到

能贴出示例么

谢了~~~
至善者善之敌 2011-07-07
  • 打赏
  • 举报
回复
要避开防火墙,是个问题。。。。
就想叫yoko 2011-07-07
  • 打赏
  • 举报
回复
tcp::endpoint ep(tcp::v4(), 3000);

你下个boost的文档吧
上面有例子
有类 手册
gimy007 2011-07-07
  • 打赏
  • 举报
回复
我现在比如防火墙开了3000的端口,那client端要怎么绑定这个3000端口与服务端进行通讯
就想叫yoko 2011-07-07
  • 打赏
  • 举报
回复
防火墙开端口 或者关闭 防火墙 或者使用80 8080 端口
c_losed 2011-07-07
  • 打赏
  • 举报
回复
端口统一就可以了吧
gimy007 2011-07-07
  • 打赏
  • 举报
回复
搞定,自己没注意看文档;哈哈

sock->open(boost::asio::ip::tcp::v4());
sock->bind(boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v4(), 3000));

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧