我有一台带有多个 NIC 的服务器。每个 NIC 都插入不同的、隔离的网络中,该网络为多播流量提供服务。我有一个程序可以监听每个网络上的多播流量。现在我必须在程序中指定要使用哪个接口作为多播加入的一部分。这不是什么大问题,但有点不方便。
是否可以使用路由来影响此过程?假设我有两个多播组,如下所示:
A. 224.1.2.32 39312 eth1
B. 224.1.11.19 59328 eth2
我可以向路由表添加两条路由,这样当我从代码加入多播组时,内核就知道发送组 A 的加入 eth1 和组 B 的加入 eth2 吗?我无法让它按照我想要的方式运行。添加各种路由似乎不会影响这个过程,我发现能够影响选择哪个接口的唯一方法是将其在代码中指定为数据multicast_request
结构的一部分。
答案1
我猜你可能需要考虑安装一个路由守护进程来启用多播路由和组管理。我还没有机会真正地玩它。我确实必须设置索普使 VOIP 系统的某些多播功能能够正常工作。