Noticed your iPhone and Mac’s Wi-Fi weren’t so good over the last year? You’re not alone, and Apple is finally fixing it, albeit quietly.
Wi-Fi problems were one of the biggest complaints about Apple’s Yosemite update for Mac last year, with thousands of users taking to Apple’s support forums to air frustration.
Ever since upgrading to yosemite, discoveryd goes to 100% cpu and dns requests fail. What new nightmare is this?! pic.twitter.com/ErYAtAsAbM
— Michael Koziarski (@nzkoz) October 17, 2014
If you’re wondering exactly what happened, there are a few moving parts. First, you need to understand what the Domain Name System (DNS) does.
Each computer on the internet has an IP address, which is like where it can be found on a street. Domain names for websites, like thenextweb.com, have an attached IP address that locates these computers. Think of a domain name as a human-readable way to get to the right IP address.
DNS servers, like the ones Google or your internet provider offers, keep a directory of domain names and their IP addresses.
When you type thenextweb.com into your Web browser, your computer requests the address from a DNS server, then takes you to the right page. It all happens without your knowledge — at least, when it works.
For the better part of twelve years, Apple used a single piece of software called “mDNSResponder” to manage much of your Mac’s networking, including this lookup process. In general, it worked flawlessly.
When OS X Yosemite rolled around in late 2014, Apple decided to rip out the trusty DNS responder and replaced it with a new process called “discoveryd.”
We don’t know the exact reason for dropping it, but the replacement appeared to be related to the new Airdrop to iPhone feature that was part of the update. Apple re-wrote the discoveryd process in a different language, C++, whereas mDNSResponder had been written in C.
The problems with discoveryd have been vast and unpredictable. You’ve probably run into at least one: duplicate computer names, random crashes, slow page loading, slow reconnection after sleep — the list goes on.
Apple tried on three occasions to patch out the problems, but the complaints continued to flow in. When a beta build of OS X hit 10.10.4 in May, discoveryd suddenly vanished after months with no fix.
At first, many wondered if it was an accident, but mDNSResponder had miraculously returned and has stuck around in the latest beta builds.
At WWDC we’ve learned that Apple has killed discoveryd in both iOS 9 and OS X 10.11 and mDNSResponder is back once again. When we get the updates later this year, your devices’ Wi-Fi should be a lot more reliable.
In the meantime, OS X 10.10.4, which is currently in beta, also drops discoveryd and should be available soon for download.
Apple never officially commented on why it dropped the new app (we’ve asked, again) , but the change will be a welcome one for anyone who uses its products.