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

Solaris не знает, какой MAC-адрес использовать для отправки многоадресного сообщения UDP.

У меня есть пара Solaris 10, которые должны отправлять многоадресные UDP-пакеты группе хостов. Один из них работает нормально, а другой - нет.

Проблема со второй машиной заключается в том, что она не знает, какой MAC-адрес использовать для обертывания этого фрагмента UDP / IP в кадре Ethernet. Когда я бегу arp -an Я вижу, что у него есть этот многоадресный адрес как U на пару секунд нерешенными, затем он сдается.

Никто не отвечает на запросы ARP для этого многоадресного IP-адреса, что вполне ожидаемо.

Теоретически (и на практике на другой машине) этот MAC-адрес должен быть хорошо известен. Вы берете младшие 23 бита IP-адреса ИЛИ с 01: 00: 5e: 00: 00: 00, и вы получаете MAC-адрес группы многоадресной рассылки. Никакие ARP не должны отправляться вообще.

Когда я вручную вставляю этот MAC-адрес в таблицу ARP этого компьютера (используя arp -s), работает нормально.

PS. Программное обеспечение работает в неглобальной зоне Solaris. Может, это имеет какое-то значение.

Какой тип сети использует зона, в которой запущено приложение? Совместное или эксклюзивное? Можно указать MAC-адрес виртуального компьютера для зоны с помощью свойства anet. Проверить соответствующий раздел документации.

У вас несколько интерфейсов? Первый из перечисленных в /etc/zones/myzone.xml будет использоваться для многоадресной рассылки. Вы должны увидеть это с помощью "netstat -rn".

Вот запись в блоге, посвященная этому: http://www.lecentre.net/blog/archives/142