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

I have four networks on my machine:

  1. 192.168.20.0/24 wired (connected only at work)
  2. 192.168.20.0/24 wireless (connected only at home)
  3. 192.168.132.0/24 VMWare's NAT
  4. 192.168.238.0/24 VMWare's host-only

My OS X (10.5) seems to prefer to use VMWare's NAT over my Wireless network for machinename.local. Is there any way to change the preference baring shutting down the VMWare interfaces?

share|improve this question

2 Answers 2

In Windows, have you tried using Run > "msconfig" to disable the "mDNSResponder" service (I believe that gets installed via iTunes)? If it's running, then I'm guessing the Bonjour traffic is being generated from Windows itself.

Otherwise, I would try the steps in this guide.

In VMWare, open the settings for the virtual machine you're using. You need to change the "Network" settings to use bridge mode, instead of NAT.

To do so, as the relevant paragraph from the above website states:

"Click on the settings of your particular virtual machine, hop over the the network, and select “Connect directly to the physical network (Bridged)”.

alt text

share|improve this answer
    
This question isn't about a getting a virtual machine to use a given interface, it is about getting OS X to use a given network for mdns. mdns returns my address on the 192.168.132.0/24 rather than on the 192.168.10.0/24 network when I am on wireless. –  Chas. Owens May 22 '09 at 18:35
    
Cool, I get that. That's why I suggested checking if mdnsreponder is active in your Windows virtual machine. I thought the second piece of advice might be acceptable as a workaround. If both interfaces are trying to use "machinename.local" then it's a matter of which machine gets an address first, so you would need to delay the second interface from starting. Just as though you had tw Macs with the name "MacPro.local" - eg: you get macpro.local and macpro-1.local. You need to either delay the vmware interface from starting up, or change its .local name –  username May 22 '09 at 18:54
    
Have you tried running Bonjour Browser to help see what's going on? If it's Windows grabbing the name, you might be able to block outgoing Bonjour traffic (port 5353, I think) in the Win firewall –  username May 22 '09 at 19:00
    
No virtual machines are currently running. –  Chas. Owens May 22 '09 at 19:12
    
This is purely a case of OS X deciding to use the wrong network. –  Chas. Owens May 22 '09 at 19:13

Have you checked your routing table to see which interface is preferred for publishing to the Zeroconf multicast group?

netstat -rn | grep 224

Will return all the routing information for reserved multicast groups. Look for an entry for 224.0.0.251; this is the group used for MDNS. If there isn't a specific entry for this group, then check the entry for 224.0.0.0 with the most specific mask. It may be bound to your VMWare interface, or if multiple routes are installed, the VMWare one may have the lowest metric.

Assuming that this is the problem, a variant of the following command (run as root):

route add -host 224.0.0.251 dev ra0

Where 'ra0' is the devicename of your wireless interface will install a specific route forcing traffic for the Zeroconf group out via your wireless interface. This is obviously manual configuration that probably won't persist across a reboot; I'm not that familiar with OS X. Can anyone advise on the 'preferred' way of modifying the host routing table under OS X?

share|improve this answer
    
I don't have any entries for 224.0.0.0 –  Chas. Owens May 24 '09 at 17:37

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.