If a DatagramChannel is created with the no-arg open method or with the protocol family INET6 then the channel cannot join IPv4 multicast groups on macOS and Windows. Both operating system support this so we can remove this restriction. The recommendation for IPv4 multicasting is to create the DatagramChannel with protocol family INET remains of course.
Related is that on Windows, the IP_TOS and IP_MULTICAST_* socket options cannot be accessed when the socket is a dual socket that has been bound to an IPv4 local address. This is because Windows requires using the IP_ rather than IPV6_ socket options for this case.