fragen stichworte

Solaris weiß nicht, welche MAC-Adresse zum Senden einer UDP-Multicast-Nachricht verwendet werden soll

Ich habe ein Paar Solaris 10-Boxen, die Multicast-UDP-Pakete an eine Gruppe von Hosts senden sollen. Der eine funktioniert gut, der andere nicht.

Das Problem der zweiten Maschine ist, dass sie nicht weiß, welche MAC-Adresse verwendet werden soll, um dieses UDP/IP-Element in einen Ethernet-Frame zu packen. Wenn ich arp -an starte, sehe ich, dass diese Multicast-Adresse für einige Sekunden als U für nicht aufgelöst gilt, dann gibt es auf.

Niemand beantwortet ARP-Anfragen für diese Multicast-IP-Adresse, was absolut erwartet wird.

In der Theorie (und in der Praxis auf dem anderen Computer) sollte diese MAC-Adresse bekannt sein. Sie nehmen die unteren 23 Bits der IP-Adresse, ODER es mit 01: 00: 5e: 00: 00: 00, und Sie erhalten die MAC-Adresse der Multicast-Gruppe. Es sollten überhaupt keine ARPs gesendet werden.

Wenn Sie diese MAC-Adresse manuell in die ARP-Tabelle dieses Computers einfügen (mit arp -s), funktioniert sie OK.

PS. Die Software läuft in einer nicht globalen Solaris-Zone. Vielleicht macht es einen Unterschied.

antworten

Welche Art von Netzwerkverbindung verwendet die Zone, in der die App ausgeführt wird? Geteilt oder exklusiv? Es ist möglich, die MAC-Adresse des vnic für die Zone mit der Eigenschaft anet anzugeben. Überprüfen Sie den relevanten Dokumentabschnitt.

Haben Sie mehrere Schnittstellen? Der erste Eintrag in/etc/zones/myzone.xml wird für Multicast verwendet. Sie sollten dies mit "netstat -rn" sehen können.

Hier ist ein Blogeintrag, der dies abdeckt: http://www.lecentre.net/blog/archives/142