-
Bug
-
Resolution: Fixed
-
P2
-
8, 9
-
b165
-
os_x
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8178771 | 10 | Chris Hegarty | P2 | Resolved | Fixed | b05 |
JDK-8264468 | 8u301 | Yoshiki Sato | P2 | Closed | Fixed | b03 |
Because of some peculiarities on Mac the original Mac port brought some code that attempts to determine the default network interface ( on Mac only ). In all cases, on recent OS and hardware, it now finds the Apple peer-to-peer interface, awdl0, which is almost always the wrong answer. This is fragile code, and using the more modern APIs that support specifying an interface will avoid most of the problems, but it is alas still used in many cases. A quick internet search shows numerous reports of issues around this.
It is possible for the heuristic to do a little better ( but not too much ), by selecting an interface that supports both IPv4 and IPv6, rather than just returning the first reasonable one it encounters.
Note: this it not a problem when joining a group using the joinGroup method that accepts a NetworkInterface ( to join the group on ), or using the new NIO MulticastChannel interface. The MulticastSocket.joinGroup(InetAddress) are very much legacy, and should probably be deprecated at some point in the near future.
It is possible for the heuristic to do a little better ( but not too much ), by selecting an interface that supports both IPv4 and IPv6, rather than just returning the first reasonable one it encounters.
Note: this it not a problem when joining a group using the joinGroup method that accepts a NetworkInterface ( to join the group on ), or using the new NIO MulticastChannel interface. The MulticastSocket.joinGroup(InetAddress) are very much legacy, and should probably be deprecated at some point in the near future.
- backported by
-
JDK-8178771 Default multicast interface on Mac
- Resolved
-
JDK-8264468 Default multicast interface on Mac
- Closed