Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Aug 2006 20:21:05 +0200
From:      Fredrik Lindberg <fli+freebsd-net@shapeshifter.se>
To:        freebsd-net@freebsd.org
Subject:   Zeroconfig and Multicast DNS
Message-ID:  <44E9F991.7020309@shapeshifter.se>

next in thread | raw e-mail | index | archive | help
Hi all,

A while ago I started hacking on a zeroconfig and multicast DNS
implementation for FreeBSD.

In short, zeroconfig allows a host to automatically negotiate
a collision free ip-address with other hosts on the network in the
absence of a DHCP-server. It's suitable for small ad-hoc networks,
or in embedded solutions.

Multicast DNS is DNS without a server, you can think of it as mixing
P2P and DNS. There are no authoritative server, instead all peers
co-operate to resolve queries. This also means that any host can choose
any name (collision detect is a part of the protocol).
The end result is that hosts on a local network can communicate with
each other by name without the need of a central DNS-server and without
the need of having prior knowledge of each other (/etc/hosts etc).
Suitable in networks without a dedicated name server and of course
in embedded solutions (ie. communicate directly with that "black box"
using a name instead of some pre-configured ip-address).

I've now reached a point where the daemons/libraries/tools actually
do what they are supposed (at least more or less...).

zeroconfd is more or less complete and should work just fine.
responderd is able to do most of the critical things it's suppose
to do (resolve/cache names), however there are some things left such
as TCP fall back for unicast queries, INET6 needs to be implemented
properly (the framework has support for INET6, just needs some work),
also, the probe/collision routines are currently missing.

More information, code and some quick starting hints are available at
http://shapeshifter.se/projects/freebsd/zeroconfig/

Fredrik Lindberg




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44E9F991.7020309>