【发布时间】:2011-03-30 08:21:52
【问题描述】:
要在我的非默认 NIC (dvb) 上接收多播,我执行以下操作:
- 打开一个套接字(AF_INET、SOCK_DGRAM)
- 在 dvb 接口上使用 IP_ADD_MEMBERSHIP 加入多播地址
- 绑定多播地址(注意一个常见的错误是绑定“0.0.0.0”然后在该套接字上接收,即使是您不感兴趣的多播)和端口
此时接收所需组播数据包的唯一方法是在路由表中添加一条规则,通过 dvb 到达发送者所在的网络(另一个网络),就好像 dvb 需要回复组播一样发件人;让我们说一种源发送方多播模式。有谁知道发生了什么?这个问题让我很烦,因为原则上我不知道发件人的 ip。
【问题讨论】:
标签: linux networking routing multicast