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?

  • Cannot connect to MongoDB via node.js in Docker
  • Logstash with fluent input codec not working
  • How to forward all ports in docker container
  • Running and configuring mqtt broker with docker composer
  • Azure - Docker : Remote error : bad certificate :
  • Docker not response after long not using on windows 10 host
  • Thanks

  • How can I keep container running on Kubernetes?
  • Docker with mongo user
  • Custom Container for hosting OpenLDAP in Bluemix
  • Kubeadm + flannel , service not accessable
  • Docker bridge change docker0 and internal ip
  • Bind physical NICs to containers for docker
  • 2 Solutions collect form web for “forward udp multicast from eth0 to docker0”

    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.

    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??

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.