-
Notifications
You must be signed in to change notification settings - Fork 29.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[dgram]socket.addMembership() does not add membership to every interface #1692
Comments
Any chance you know if you're still experiencing this problem or not? I suspect that if you are, that the issue is in libuv but I'm having trouble replicating. What's the Wireshark filter you are using? |
I am still experiencing this problem ✋ When I type So by the moment I have to bind to all interfaces in a loop. |
I also experienced this having it only bind to one interface. On windows 10. Seemed to only bind to the VirtualBox host interface. |
Adding membership using `IP_ADD_MEMBERSHIP` with interface address set to `INADDR_ANY` for `IPv4` or as an index of `0` for `IPv6` leads to using only one interface selected by the operating system. Fixes: nodejs#1692 PR-URL: nodejs#7244 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
Adding membership using `IP_ADD_MEMBERSHIP` with interface address set to `INADDR_ANY` for `IPv4` or as an index of `0` for `IPv6` leads to using only one interface selected by the operating system. Fixes: #1692 PR-URL: #7244 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
Adding membership using `IP_ADD_MEMBERSHIP` with interface address set to `INADDR_ANY` for `IPv4` or as an index of `0` for `IPv6` leads to using only one interface selected by the operating system. Fixes: #1692 PR-URL: #7244 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
Adding membership using `IP_ADD_MEMBERSHIP` with interface address set to `INADDR_ANY` for `IPv4` or as an index of `0` for `IPv6` leads to using only one interface selected by the operating system. Fixes: #1692 PR-URL: #7244 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
Adding membership using `IP_ADD_MEMBERSHIP` with interface address set to `INADDR_ANY` for `IPv4` or as an index of `0` for `IPv6` leads to using only one interface selected by the operating system. Fixes: #1692 PR-URL: #7244 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
Adding membership using `IP_ADD_MEMBERSHIP` with interface address set to `INADDR_ANY` for `IPv4` or as an index of `0` for `IPv6` leads to using only one interface selected by the operating system. Fixes: #1692 PR-URL: #7244 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
Adding membership using `IP_ADD_MEMBERSHIP` with interface address set to `INADDR_ANY` for `IPv4` or as an index of `0` for `IPv6` leads to using only one interface selected by the operating system. Fixes: #1692 PR-URL: #7244 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
I have 3 network interfaces on my computer (2 ethernet + 1 virtual for VirtualBox) connected to different independent networks.
With Wireshark I inspected the packets generated when calling socket.addMembership() without specifying a multicast interface and I noticed the
Membership Report / Join group
request is only sent on 1 interface (the default route) but not on the others.Here is a simple program demonstrating the problem:
But if I specify every interface when calling
socket.addMembership()
, the properMembership Report / Join group
requests are sent and the multicast messages sent on any network is received.Both network interfaces are up and support broadcast and multicast, they have the following IP:
-enp2s0: 10.80.10.28 (default route)
-enp6s0: 172.20.3.26
-virbr0: 192.168.122.1 (NAT / virtual box)
The problem has been reproduced with io.js 1.6.4 and 2.0.1 (linux x64).
The text was updated successfully, but these errors were encountered: