好奇。那是多余的吗?你有没有绑定到你想要使用的网络?也许是因为你绑定到0.0.0.0并且现在只想从接口X监听多播数据包的情况?
答案 0 :(得分:2)
如果您绑定INADDR_ANY(这是正常情况),则连接组IGMP消息将通过路由表所指示的最短路由到达多播地址的任何NIC接口。在多宿主主机中,您可能需要它通过所有NIC出去,因此您可以依次通过它们循环连接它们。
如果您绑定到特定的NIC,则在加入时指定网络接口是没有意义的。
如果您绑定了多播地址本身,那么该套接字只能接收多播,而不是单播UDP,如果您想通过所有接口加入,则可能需要像(1)中那样循环。 / p>