首页 新闻 搜索 专区 学院

socket 发消息给 一组IP

0
悬赏园豆:10 [已解决问题] 解决于 2010-12-05 23:47

如何 使用 SOCKET 进行群发呢? 就是给一组的已知的IP发消息? 补充要求在广域网 即Internet环境下。用的是UDP 协议网上查到有些例子是 说用 广播 方式。但是广播怎么能穿越路由器呢?

DotDot的主页 DotDot | 初学一级 | 园豆:109
提问于:2010-12-01 12:48
< >
分享
最佳答案
0

广域网上不能用组播方式发送,广域网的路由器上是不允许通过广播包的,否则这个网早就塞死了。你只能向各个单点分别发送。

收获园豆:10
eaglet | 专家六级 |园豆:17119 | 2010-12-01 15:01
大致也想得出广域网不能广播,但是 想QQ里的 群聊,也是想单个点分别发送的?
DotDot | 园豆:109 (初学一级) | 2010-12-01 15:11
显然是单点发送的,否则干什么限制群的人数,人数多了,它服务器就受不了了,MSN 的群只能允许20个用户。
eaglet | 园豆:17119 (专家六级) | 2010-12-02 11:46
其他回答(1)
0

255.255.255.255为广播地址。。。
要用udp,还要把套节字设置为允许广播的模式。。。

int on = 1;
setsockopt(sockfd, SOL_SOCKET, SO_BROADCAST, &on, sizeof(on));

°潶、緤° | 园豆:17 (初学一级) | 2010-12-01 14:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册