DNSSD is a library for handling the DNS-based Service Discovery Protocol (DNS-SD), the layer of Zeroconf that allows network services, such as printers, to be discovered without any user intervention or centralized infrastructure.
Apple's implementation of Zeroconf is Bonjour. Apple's developer documentation provides lots of information about Bonjour in its Bonjour overview.
If you are writing an application that wants to discover services on the network, use DNSSD::ServiceBrowser. You can also find available service types using ServiceTypeBrowser.
If you want to announce the availability of a service provided by your application, use DNSSD::PublicService.
DNSSD::DomainBrowser allows you to find domains (other than the local one) recommended for browsing or publishing to.
Note that DNSSD::ServiceBrowser::isAvailable() provides information about the availability of the services provided by this library generally, not just for browsing services.
@maintainers Jakub Stachowski
@licenses @lgpl