-
Notifications
You must be signed in to change notification settings - Fork 28
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
multiple network interfaces #25
Comments
Hi Michal, thank you for the very detailed bug description! We already tried to solve the very similar issue in #19. I created the enum-interfaces branch for proving that sending packets to broadcast addresses of all available interfaces will help. But this mechanism is only implemented for Windows. Can you please check that enum-interfaces branch will make peers running on Windows visible to Linux peers? #19 (comment) for the reference. |
Hi Dmitrii, the |
Great! Am I right that Windows peers are visible to Linux peers but Linux peers are still not visible to Windows peers? If this is the case that I will extend the enumeration mechanism to linux-like systems. |
Linux peers see windows peers and also windows peers see linux peers. It works both ways. So in my setup with 4 peers, one linux peer outputs (the other one on linux has similar output):
and one windows peer outputs (not sure why it shows so many discovered peers, the other one on windows has similar output):
Here is my
and ifconfig on my linux computer:
|
When I ran
./udp-discovery-example both both test1
and the same withtest2
on the same windows computer, they both discovered each other.It worked also when I ran it with
test3
andtest4
on another linux computer on the same network.But the services
test1
andtest2
didn't discovertest3
andtest4
and vice versa.I suspect this issue might be related to having multiple network interfaces on both computers (mostly created by docker). I had similar problem with my simple UDP broadcast implementation using Qt. First two examples below worked only in some cases, but the third one worked well in all my tests. Maybe it could help you to solve the issue also in this project.
This didn't work:
This didn't work either:
This finally worked (got it from here: https://forum.qt.io/post/187963):
You can search for documentation of Qt classes here: https://doc.qt.io/qt-5/index.html
The text was updated successfully, but these errors were encountered: