This is an old revision of the document!
Multicast DNS Quickstart
Obtain the code, either through perforce or grab the latest snapshot. The code should compile fine on both current and 6-STABLE.
Note that this is NOT production ready yet
If anything crashes or misbehaves, please try to obtain a backtrace from gdb
mdnsd
> cd mdnsd > make
If you want it to announce and claim records for your hostname you need to supply a configuration file, the default should do fine.
./mdnsd -f mdnsd.conf.sample
It's quite noisy as most debugging is still enabled, you can change the output by manipulating the DEBUG_MASK in mdnsd/Makefile. Debugging masks are defined in mdnsd/debug.h If your hostname is foobar, the name foobar.local. will be claimed as yours and you should be able to use this name from another mDNS enabled machine (example Mac OS X client) to contact your machine.
Note that you need to start mdnsd as root if you want to be able to use libmdns, this is because the pipe is created in /var/run/mdnsd.pipe. It's possible to drop privileges with the -u and -g flags.
./mdnsd -f mdnsd.conf.sample -u nobody -g nobody