Назад | Перейти на главную страницу

Когда хост присоединяется к группе многоадресной рассылки, нужно ли ему изменить свой IP-адрес на IP-адрес группы многоадресной рассылки?

Я про IPv4. Если нет, то использует ли хост 2 IP-адреса, один для многоадресной передачи, а другой для «обычной» связи?

Нет. И у IP-адресов многоадресной рассылки есть специальный диапазон (например, 239.x.x.x), который был бы недопустимым в качестве адреса хоста. Вы просто делаете setsockopt с участием IP_ADD_MEMBERSHIP и вы сделали. И, если серьезно задуматься, изменение IP-адреса будет означать, что весь обычный трафик остановится.

Вы говорите, что хотите, чтобы интерфейс [через сокет] прослушивал и обрабатывал пакеты для данного многоадресного адреса, в дополнении к его обычный адрес интерфейса. Это немного сложнее, но достаточно близко.

IIRC, если система [host0] имеет два интерфейса (например, карты NIC), скажем, eth0 и eth1, а eth0 имеет полупрямое соединение с данной многоадресной рассылкой, и есть host1, подключенный к host0 через eth1, и host1 может только получить многоадресную рассылку через host0, host0 должен будет подписаться на многоадресную рассылку не для себя, а от имени host1 и пересылать пакеты на eth1.