从 Docker 容器发送多播数据包(到多播组)

Sending Multicast Packets from Docker Container (to multicast group)

我有一个通过 UDP 多播发送消息的应用程序,我一直试图将其置于 docker 之下。我一直 运行 试图从 docker 容器发送多播数据包。

我已经能够通过 运行 docker 容器上的 --net=host 选项发送消息。但是,我想坚持使用网桥配置。

我想深入了解需要做什么才能通过标准 docker 网桥配置发布消息。我正在尝试使用端口 16000239.9.60.250 上发布消息。我尝试通过 docker run.

上的以下参数发布 udp 端口​​ 16000
-P 0.0.0.0:16000:16000/udp

这并没有给我任何行为上的改变,我的主机也没有看到任何多播流量。

Docker 网络驱动程序没有 IGMP/PIM 支持,因此您应该真正建立从容器到物理 switch/router 的直接第 2 层连接。

正如您自己发现的那样,docker 的默认桥接网络在这里对您没有帮助。

我还没有用多播测试过它,但是你应该可以用 Pipework 来实现它。

macvlan driver 应该可以帮助您解决问题,但从 Docker Engine 1.11

开始目前处于试验阶段