繁体   English   中英

UDP 组播服务器添加客户端到组播组

[英]UDP Multicast server adding Clients to Multicast Group

我有一个 C 项目以 C 语言实现多播,这里服务器(只有一个)发送数据,客户端接收服务器(多个)发送的数据。

这里的问题是,我希望服务器到客户端到多播组。

mreq.imr_multiaddr.s_addr = mcastAddr.s_addr;
mreq.imr_interface.s_addr = htonl(INADDR_ANY);
rc = setsockopt(sd, IPPROTO_IP, IP_ADD_MEMBERSHIP,
(void *) &mreq, sizeof(mreq) );

上面的东西用于从客户端将客户端添加到多播组。

有没有办法从服务器将客户端添加到组? 我认为获取客户端套接字并将其添加到组对我来说没有意义,这可能吗?

任何帮助表示赞赏,在此先感谢。

多播发送者不能让接收者收听多播地址,至少不能直接这样做。 上面的代码告诉运行它的机器开始监听特定接口上的特定多播地址。

如果您希望服务器告诉客户端加入组,您需要以特定于应用程序的方式发送单独的单播消息,告诉客户端加入组,然后当客户端收到消息时,它将使用上面的代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM