mdnsd - embeddable Multicast DNS Daemon
"mdnsd" is a very lightweight, simple, portable, and easy to integrate open
source implementation of Multicast
DNS (part of Zeroconf, also called
Rendezvous
by Apple) for developers. It supports both acting as a Query and a Responder,
allowing any software to participate fully on the .localnetwork just by including a few files
and calling a few functions. All of the complexity of handling the
Multicast DNS retransmit timing, duplicate suppression, probing, conflict
detection, and other facets of the DNS protocol is hidden behind a very simple
and very easy to use interface, described in the header
file. The single small c source file has almost
no dependencies, and is portable to almost any embedded platform. Multiple
example applications and usages are included in the download, including a
simple persistent query browser and a tool to advertise .local web sites.
The code is licensed under both the GPL and BSD licenses, for use in any
free software or commercial application. If there is a licensing need not
covered by either of those, alternative licensing is available upon request.
The current release version
is:
TODO
- Better example programs/docs
- Further portability testing
- Compliance testing
- Scripting languages (Perl, Python, etc)
- Improved/Additional APIs
- Internal code cleanup
Author's Note
My only reason for putting the (far more than anticipated) time
into this project was in the hope that it would be useful for others and
help encourage wider support for Zeroconf/Rendezvous. If this is helpful
in an integration project, or if I can help further in such an effort, just
let me know.