Last Updated: February 25, 2016
·
39.17K
· ocodo

OSX Yosemite Bonjour / mDNSResponder problems...

Note: At the time of writing this is only applicable to Developer Preview 1 and 2

If you're trying to reach out from (or back in to) a Mac running OS X 10.10 Yosemite, Developer Preview, you may have found that your Bonjour networked machines aren't resolving.

This is because the mDNSResponder and mDNSResponderHelper are disabled (for some reason.) To re-enable them, you need to edit the com.apple.mDNSResponder.plist. You'll find it located at:

/System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

You'll find a couple of lines near the top:

<key>Disabled</key>
<true/>

Delete those lines, and save.

You'll need to reload and start mDNSResponder so in the terminal:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

.local names should now resolve. (Remember to try just the machine name first, as .local sometimes doesn't resolve properly.)

To check the service is running, use:

ps aux | grep -i dns

You should see /usr/sbin/mDNSResponder running, if not, try restarting the service as above.

24 Responses
Add your response

after doing this (previews 5, 6 and 7), the permissions for com.apple.mDNSresponder are whacked. The OS is now throwing errors each time a network connection is NOT present:

This computer's local hostname "xxxx.local" is already in use on this network. The name has been changed to "xxxxx-%incrementing_number%.local".

Verifying and repairing permissions with diskutil doesn't resolve the issue. Nor does adding the lines back in. The error is repeatedly thrown until a network connection is obtained.

.local now resolves, but this is a pesky error for sure. Proceed with caution.

over 1 year ago ·

With Public Beta 3.0 the com.apple.mDNSResponder.plist is completely gone, at least for me. Also the /usr/sbin/mDNSResponder doesn't longer exists. But my Mac still cant resolve .local hostnames. Surprise surprise.

In fact the Airport-Utility is not able to find the local Airport Extreme... even if my Mac is directly connected via WiFi. It's very annoying.

I have the Server 4.0 Beta 14S274J installed, which shows awkward settings if I try to change the hostname in the computer preferences there. Maybe here's a problem?

over 1 year ago ·

Looks like com.apple.discoveryd.plist has replaced com.apple.mDNSResponder.plist

I issues the following commands and my iMessages bonjour started to work again. This is under Public Beta 3.0

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.discoveryd.plist
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.discoveryd.plist

over 1 year ago ·

That works for me! Thanks!

over 1 year ago ·

Anyone else have to periodically restart it?

over 1 year ago ·

There is a --no-multicast flag for discoveryd.

Still more to test - but this is what I came up with to disable bonjour on OS X 10.6 to OS X 10.10

https://github.com/MacMiniVault/Mac-Scripts/blob/master/disablebonjour/disablebonjour.sh

over 1 year ago ·

I wish there was a more permanent fix. I have to do this everytime I log off and log in into my account.

over 1 year ago ·

Thanks for this thread, I upgraded from 10.9 to 10.10 without using betas, and could not, for the life of me, figure out why I couldn't ping any DNS addresses, or reach the web, however my nslookups were working fine.

Unloading discoveryd and reloading immediately got me on the internet. About an hour later though, I lost internet again and had to perform the same step. I hope Apple resolves this!

over 1 year ago ·

Adium Bonjour client triggers this issue for me, disabling that account seems to help.

https://trac.adium.im/ticket/16827

over 1 year ago ·

After upgrading to Yosemite 10.10 via the AppStore (no new/clean install), I get a blank page when previewing a website with Codekit 2. In the "Server" tab the Bonjour Hostname in my case "lukas.local" is missing since the upgrade http://goo.gl/QduPqp.

Any ideas how to expose my Bonjour hostname correctly again? Thanks!

over 1 year ago ·

Hi Lukas

Have you tried the suggestions in the thread?

Are you having trouble with any of the terminal commands? Let us know what you've tried.

Thanks

over 1 year ago ·

We had the same problem in our company. None of the provided "solutions" did work though. We still couldn't ping for example foo.bar.company.local.

What worked in the end was the following: Don't fool around with anything, do not restart discoveryd and do not modify its plist file. Instead just add "company.local" to your search domains (System Preferences / Network / Advanced / DNS). The article at http://support.apple.com/kb/HT3473 lets you believe that things should work out of the box since 10.6 if the hostname to ping has more than 2 "labels" (parts separated by dots). This worked in 10.9 but fails in 10.10. Adding "company.local" to the search domains did the trick for us. Btw: Just adding "local" wasn't enough!

Regards,
Oliver

over 1 year ago ·

Hi Oliver, while that will allow you to find machines by host name, its dependent on your router to support it.

Bonjour requires services to be advertised, but if you just want to resolve the host names that's up to you. It's just not what this post is for.

Also note that while OS X 10.10 has issues with Bonjour, some router firmware also had problems with it.

Making sure the mdns / discoveryd service is running on each machine and also checking your router has no known bonjour/apple networking issues is the only way to legitimately solve this problem. (eg. Getting all bonjour advertised services broadcasting)

over 1 year ago ·

Also never name hosts with a dot in their name. That's asking for trouble.

over 1 year ago ·

Is anybody solve this issue?

over 1 year ago ·

Hi digigit - did you try any of the solutions listed?

Surprised if an Apple AirPort is to blame, but check firmware in case an update is available.

Some Asus wifi routers have firmware issues with Bonjour/Zeroconf so it's slways worth checking.

AFAIK the Yosemite issues only extend to services not running / resolving.

Limiting a test to a couple of Ubuntu boxes running avahi daemon would rule out / in your router / firmware.

over 1 year ago ·

@ocodo Thanks... Yes I did. As mentioned above, loading/unloading the discoverid plist only brings brief respite.

Unfortunately you may also be right in your general comment about AirPort. My solution only lasted for about a day. Today all .local boxes are back to nowhere. :-(

My apologies to all those that I sent on a wild chase for ethernet cables. Does anybody know how to delete a posting :-) ?

over 1 year ago ·
sudo discoveryutil mdnsactivedirectory yes

Seems to have the desired effect. I am not exactly sure what it does, so use at your own risk. And I will bet it will not survive a reboot, but it looks like a start.

I got it from this thread https://discussions.apple.com/thread/6611817

Do check and revert.

over 1 year ago ·

Oliver's solution might not be relevant to this post but THANK YOU, THANK YOU, THANK YOU for posting it. That was exactly the problem I was having and I've tried EVERY other solution from all the page 1 results of 3 different google search variations.

The only other thing that came close to cluing me in was this out of date kb article http://support.apple.com/kb/HT3473.

You saved me from performing a fresh install (and a day of wasted effort).

over 1 year ago ·

Sorta relevant: For disabling mDNS announcing on GM Yosemite without breaking anything else (the undocumented --no-multicast flag for discoveryd currently breaks WiFi).

Here's a pf approach that works:

https://discussions.apple.com/message/27090155#27090418

over 1 year ago ·

10.10.1 doesn't fix discoveryd's --no-mulicast flag.

over 1 year ago ·

I'm having this same issue in 10.10.2

over 1 year ago ·

Also, try going to System Preferences>Network and click on the location tab, and create a new location. If it's set to automatic, that's your issue. Yosemite seems to have problems with connecting to networks automatically.

over 1 year ago ·

I'm using 10.10.3, but I'm sure it works on 10.10.2 as well. Good luck!

over 1 year ago ·