Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a pair of Solaris 10 boxes which are supposed to send multicast UDP packets to a group of hosts. One of them works just fine, whereas the other one does not.

The problem with the second machine is that it doesn't know what MAC address to use to wrap this piece of UDP/IP in an ethernet frame. When I run arp -an I see that it has this multicast address as U for unresolved for a couple seconds, then it gives up.

Nobody answers ARP requests for this multicast IP address, which is totally expected.

In theory (and in practice on the other machine) this MAC address should be well known. You take the lower 23 bits of the IP address, OR it with 01:00:5e:00:00:00 and you get the MAC address of the multicast group. No ARPs should be sent at all.

When I manually inject this MAC address into the ARP table of that machine (using arp -s), it works OK.

PS. The software runs within a non-global Solaris zone. Maybe it does make some difference.

share|improve this question

2 Answers 2

Do you have multiple interfaces? The first one listed in /etc/zones/myzone.xml will be used for multicast. You should be able to see this with "netstat -rn".

Here is a blog entry that covers this: http://www.lecentre.net/blog/archives/142

share|improve this answer
    
Routing table is fine. I checked that. It's not that the packets get sent via wrong interface and don't reach the destination. They don't get sent at all, which I verified with snoop. –  Tadeusz A. Kadłubowski Feb 5 '13 at 13:11

What type of networking does the zone running the app use? Shared or exclusive? It is possible to specify the mac address of the vnic for the zone using the anet property. Checkout the relevant doc section.

share|improve this answer
    
What has it to do with determination of MAC addresses for UDP multicast groups? –  Tadeusz A. Kadłubowski Feb 6 '13 at 9:45

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.