Can Bonjour be disabled on a specific network adapter, but not the other?

Hello, I'm having a problem on a pre-unibody MacBook Pro running Snow Leopard 10.6.7. Essentually I have the MacBook acting as a print server to a network on the physcial interface, and another interface on the wireless interface. Bonjour is required to advertise the printers in this specific case -- I have no other option. The problem is that sometimes the printers are seen, regardless of the network your device is on, and sometimes they are not. Disabling one of the interfaces allows all advertisements to go out the active network, at which point all devices on that network successfully see the printers.


My specific issue is that in order to fix a print advertising problem I need to disable Bonjour on the physical interface, but leave it advertising on the wireless interface.


I know you can disable Bonjour altogether, but I have a need to limit advertisements to only one interface.


Thank you in advance!

Posted on Jun 14, 2011 5:43 AM

Reply
5 replies
Sort By: 

Jun 14, 2011 6:16 AM in response to Linc Davis

Thanks for the quick reply.


The printers are connected via LDP (IP based printing). I'm using the Mac to bridge the two networks, treating the Mac as print server. I've resolved that the Bonjour advertisements don't go out both the wired and wireless NICs as often as I'd like (I think they're actually split between the interfaces), and so I'm only going to rely on the wireless network for advetising, where the actual printers are on the wired NIC.

Reply

Jun 14, 2011 6:40 AM in response to gregarious64

That won't work. Configure your wireless access point as a bridge between the wired and wireless networks. If the printers are Bonjour-enabled, that's all you need to do. If not, connect them to a Bonjour-enabled print server such as an Airport base station.


To answer your original question, there's no way to disable Bonjour broadcasting by interface.

Reply

Jun 14, 2011 6:49 AM in response to gregarious64

I do not believe you can specify bonjour to a specific interface. Bonjour (mDNSResponder) has no user interaction or program arguments and is run by launchd in an on-demand method. The system launcher "launchd" also cannot be set to only watch for activity on a specific interface (the most it can do is limit by sockets). Your best bet would be to somehow configure the firewall so it blocks mDNSResponder on specified interfaces (I've done this for specific ports in the past, but not for a specific program or service). Apple's "alf.plist" configuration for the application firewall does not appear to have an option to specify a network interface for entries.

Reply

Jun 14, 2011 7:57 AM in response to Linc Davis

There is a bit more than I'm not going into here, but that's only to keep things simple. The Mac is acting as a Bonjour print server to both networks, so for all intents and purposes the networks are bridged. It just comes down to the behavior of Bonjour on the Mac and me trying to do something unorthodox.


Another workaround to this would be to figure out a way to increase the frequency of bonjour advertisements on all interfaces, but I don't think it's possible.


I have the option of routing between the two networks at the core switch, which I may just end up doing. That's currently the harder route due to change requests and approval, but apparently it's my only option.


Thank you both for your time. I really do appreciate it!

Reply

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Can Bonjour be disabled on a specific network adapter, but not the other?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.