Erlang multicast DNS and DNS-SD (DNS Service Discovery)
Switch branches/tags
Nothing to show
Clone or download
msantos Make the message a bit more generic.
This commit message is many times larger than the actual change.
Latest commit 9b6bf16 Feb 9, 2010


emdns is a cleverly named implementation of the multicast DNS (aka
Bonjour, aka ZeroConf) and DNS-SD (DNS Service Discovery) protocols
for Erlang.

Eventually, it will support:




Assume you have two hosts "nul" and "ack". Any multicast DNS services
are disabled on "nul". "ack" runs Mac OS X.

Host Entry

1. Login to "ack". From a shell, run:

$ ping nul.local
ping: unknown host nul.local

2. On "nul", start erl:

$ erl -pa ebin
> emdns_server:start().
> emdns_server:debug(true).
> A = emdns:service(host). % assumes "nul" has a reverse DNS entry
> emdns_server:send(A).

3. On "ack", run:

$ ping nul.local
PING nul.local ( 56 data bytes
64 bytes from icmp_seq=0 ttl=64 time=4.471 ms
64 bytes from icmp_seq=1 ttl=64 time=2.611 ms

4. Set up a DAAP service 

> D = emdns:service(daap).
> emdns_server:send(D).

5. On "ack", in iTunes, check "Devices" for an entry named "erlMOTE".