Le panneau de recevoir le trafic de multidiffusion

Nous avons un dockerized application serveur qui est en train de faire l'auto-découverte des appliances physiques sur le réseau par l'écoute des paquets de multidiffusion sur le port 6969. Nous avons donc besoin de notre support de récipient pour être en mesure de recevoir ces paquets à partir de périphériques à l'extérieur de l'hôte, par l'intermédiaire de l'hôte, et dans le conteneur. J'ai vu certains similaire questions et fait un beaucoup de la lecture mais je suis toujours incapable d'obtenir le serveur pour répondre à ces paquets de multidiffusion.

Je suis assis sur Wireshark en regardant le trafic réseau, mais je ne suis pas un spécialiste. Je sais Docker crée un MASQUERADE adresse à faciliter la circulation de tous les regarder comme elle vient de le Docker de la passerelle, de sorte que lorsque je regarde veth je vois la plupart des parler entre 172.17.0.1 et 172.17.0.2 bien que mon serveur n'est pas capable de récupérer toutes les informations sur les périphériques sur le réseau. (Si je cours à l'extérieur de docker, je n'ai pas de questions de cours.)

Je ne peux pas utiliser --net=host que, comme d'autres, nous nous servons de la --link fonctionnalité. J'ai essayé les variations suivantes...

  • docker run --name app -p 6969:6969 -d me/app:latest
  • docker run --name app -p 0.0.0.0:6969:6969 -d me/app:latest (Ce que j'aurais juré fonctionné une fois, mais maintenant ne l'est pas?)
  • docker run --name app -p 0.0.0.0:6969:6969/udp -d me/app:latest
  • docker run --name app -p 255.255.255.255:6969:6969 -d me/app:latest

Toute aide ou insight vous pouvez fournir serait grandement apprécié.

OriginalL'auteur DTI-Matt | 2016-05-13