Многоадресная группа - это специальный IP-адрес.Вы присоединяетесь к нему через setsockopt()
, используя опцию сокета IP_ADDMEMBERSHIP, или, например, в Java через MulticastSocket.joinGroup()
.Здесь нет номера порта.Если вы хотите присоединиться через определенный локальный адрес, используйте перегрузку, которая указывает локальный адрес, или сначала вызовите setNetworkInterface()
.
Привязка к локальному адресу - это отдельная операция, которая в первую очередь определяет, какие локальные адресаСокет может отправлять и получать данные по одному или всем из них: либо по одному локальному адресу, который определяет, какую из доступных подсетей вы слушаете и можете отправлять через или через порт, или и то, и другое.Обычно лучше использовать INADDR_ANY в качестве адреса привязки, если ваше приложение магически не знает о топологии сети.
Это запутано тем фактом, что в Linux вы можете привязать к адресу многоадресной рассылки, но, похоже, этобыть недоразумением, которое теперь всегда будет с нами.
Вы отправляете в группу многоадресной рассылки, отправляя на адрес многоадресной рассылки.