At least on windows the pseudo multicast interface adds itself to the multicast group of only one if the interfaces.
The call
sock.addMembership(MDNS_MULTICAST);
adds the socket to only one of the interfaces as described here: https://nodejs.org/api/dgram.html#dgram_socket_addmembership_multicastaddress_multicastinterface
If the multicastInterface argument is not specified, the operating system will choose one interface and will add membership to it. To add membership to every available interface, call addMembership multiple times, once per interface.
From the documentation I think it is the same for linux and maybe other OSes.
A possible fix is collecting the addresses of all interfaces while binding to them and then calling addMembership multiple times.
At least on windows the pseudo multicast interface adds itself to the multicast group of only one if the interfaces.
The call
sock.addMembership(MDNS_MULTICAST);adds the socket to only one of the interfaces as described here: https://nodejs.org/api/dgram.html#dgram_socket_addmembership_multicastaddress_multicastinterface
From the documentation I think it is the same for linux and maybe other OSes.
A possible fix is collecting the addresses of all interfaces while binding to them and then calling addMembership multiple times.