linux - 两个组播流共享相同的组地址

标签 linux udp multicast

我看到两个不同的多播流到达我的计算机,它们具有相同的组地址 226.a.b.c,但端口 AB 不同。

我只需要其中一个(例如A)。 因此,我将套接字绑定(bind)226.a.b.c:A,并使用setsockopt IP_ADD_MEMBERSHIP

发出加入请求

现在我希望只接收发送到端口 A 的数据包,并将丢弃发送到端口 B 的所有数据包。我是正确的还是这个配置有问题?

最佳答案

是的,绑定(bind)套接字将仅接收地址为 226.a.b.c:A 的数据包。 发送到 226.a.b.c:B 的数据包仍然可以被其他套接字接收(甚至在另一个进程中),也就是说,它们不一定会被丢弃。

关于linux - 两个组播流共享相同的组地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30672251/

相关文章:

c++ - UDP 连接总是成功

c++ - 向多个客户端 UDP 发送数据时不支持地址族

c++ - 如何从收到的多播报文中判断发送者的多播组端口对

linux - KSH 循环遍历 num_machines 在下面的脚本中

python - 在 $PATH 中找不到可接受的 C 编译器 - 安装 Python 和 GCC

ios - Azure 物联网通信

python - 看不到来自另一台设备的 UDP 多播消息

java - Apache Camel 从当前路由开始新的异步路由

linux - IN 指令段错误,内联汇编 GCC

c++ - 让程序运行缓慢