将udp组播从eth0转发到docker0

我有一个docker容器运行一个Java应用程序正在侦听UDP多播数据包。 我没有收到容器内的数据包,但它们出现在eth0上的主机上。

docker有办法自动拿起这些数据包并将其转发给容器吗?

谢谢

你可能想尝试 – --net host因为它似乎是唯一的工作,根据#3043的讨论,获取主机以外的组播stream量到达容器。

在经历了许多令人沮丧的日子之后,尝试了许多事情……终于有一些工作:

使用pipe道( https://github.com/jpetazzo/pipework ),下面的命令工作,但有一个catch –

 pipework eth2 $(docker run -d hipache /usr/sbin/hipache) 50.19.169.157/24 

通过运行上面的命令运行一个docker集装箱并不完全帮助我。 我必须在主机上运行tcpdump -i eth2来捕获eth2接口上的数据包,然后开始将数据包转发到docker容器。

任何想法为什么工作,而不是只是运行命令?