Robot Web Services discovery

We use a custom multicast DNS implementation to discover robot controllers in the network. Works perfect for virtual controllers, but on real controllers we find a controller only once. After that the controller is not found anymore for ~5 minutes. Then it can be found again once, etc.

I investigated this behavior with Wireshark. A query is sent to the default multicast DNS address by the PC and the first time the robot controller answers at the same address. The second time, the robot controller answers at the IP address of the client PC instead of the multicast DNS address. This breaks the discovery protocol.

Is this a bug in the Robot Web Services implementation? Or do we need to adjust our discovery implementation?