Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

forward udp multicast from eth0 to docker0

I have a docker container running a java application which is listening for UDP multicast packets. I am not receiving the packets inside the container, however they appear on the host machine on eth0.

Is there a way for docker to automatically pick up these packets and forward them to the container?

Thanks

like image 964
Sohail Avatar asked Feb 26 '15 09:02

Sohail


2 Answers

After a lot of frustrating days of trying out a number of things... finally something worked:

Using Pipework (https://github.com/jpetazzo/pipework), the following command worked but there is a catch -

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

running a docker container by only running the above command did not quite help me. I had to run tcpdump -i eth2 on my host to capture packets on eth2 interface, which then started to forward the packets to the docker container.

Any idea why is worked and not just running the command??

like image 119
Sohail Avatar answered Nov 13 '22 05:11

Sohail


You may want to try --net host as it seems to be the only work around for getting multicast traffic outside of the host to reach the container according to the discussions on #3043.

like image 3
Roberto Andrade Avatar answered Nov 13 '22 05:11

Roberto Andrade