Differences between revisions 23 and 24
Revision 23 as of 2006-09-29 16:33:05
Size: 6381
Editor: JoeyHess
Comment:
Revision 24 as of 2006-09-29 16:33:57
Size: 6371
Editor: JoeyHess
Comment:
Deletions are marked like this. Additions are marked like this.
Line 34: Line 34:
|| {o} ekiga (aka gnomemeeting 2.0) || supposed to support mdns; Currently in NEW|| || {o} ekiga (aka gnomemeeting 2.0) || supposed to support mdns; test? ||

Automatic local network configuration and discovery for Debian

This page exists to track and coordinate support for zeroconf networking, mdns, etc in Debian. These technologies allow a machine to be added to a local network and automatically obtain an IP address (without using a dhcp server), and discover services such as printers, file shares, and web servers on the local network, without any special configuration or centralised network management.

Quick start for your machine

To try this on your machine, try installing these packages:

apt-get install avahi-daemon avahi-discover libnss-mdns

Now run avahi-discover.

See below for additional stuff to try.

Status

Place a {*} ({*}) in front of things that are in Debian and ready for wide use, {o} ({o}) in front of things still in progress, and /!\ (/!\) in front of things that should be used with some caution.

{*} avahi

works great, current best of breed mdns service publication and discovery framework

/!\ zeroconf

works ok for most, but many people don't like its behavior of "hiding" the primary IP address in ifconfig (bug [http://bugs.debian.org/307480 #307480]), and it may break other things. Many people can happily use mdns w/o zeroconf.

{*} libnss-mdns

new version uploaded that works with no manual config

{*} libapache2-mod-dnssd

lets avahi publish info about apache2 web server. No config needed for basic publication.

{o} openssh-server

avahi-daemon has an example file to publish a ssh server. Should ssh automatically add this file to /etc/avahi/services, so if the user installs avahi it will get published?

{*} rhythmbox

can publish/browse DAAP music shares using avahi, tested and works

{*} banshee

support DAAP with avahi, through the banshee-daap Debian package

{o} service-discovery-applet

Available, but not installed automatically with rest of gnome.

{*} epiphany-browser

Browse local web sites via "local sites" bookmarks. Uses gnome-vfs2's dns-sd layer. Tested and works

{*} gnome-vfs

supports mdns browsing in Nautilus (sftp, webdav and ftp) and provides a generic mdns/dns-sd layer to applications.

? gnome-games

supposed to support howl, and there's an avahi patch

? kde

supposed to have excellent support throughout for mdns, can someone verify all the KDE stuff listed [http://www.avahi.org/wiki/AdministrativeAvahiApplication here] works in Debian?

{o} vlc

supposed to support mdns publishing of video streams, is this enabled in debian? -- VLC in debian also supports bonjour services via playlist (ctrl-p then manage->service discovery->bonjour services) needs to be tested, I don't know how to publish streams

{o} ekiga (aka gnomemeeting 2.0)

supposed to support mdns; test?

{*} gobby

supports collaborative text editing, uses Avahi's compatibility layer

{o} wzdftpd

The SVN trunk contains a Zerconf module which supports Avahi, Bonjour and Howl (so not in Debian yet?)

{o} daapd

not yet in debian, RFP bug filed (http://bugs.debian.org/359771). Does it support avahi, or only howl?

{o} mt-daapd

ITPs filed (http://bugs.debian.org/285789); has non-free mdns server embedded that needs to be removed. Patches to use avahi are [http://slomosnail.de/archives/39-mt-daapd-ported-to-work-with-avahi.html available] and work-for-me

{o} vino

GNOME vnc server, has avahi support and is in debian, not tested yet

The [http://www.avahi.org/wiki/AvahiWalkOfFame avahi walk of fame] is a comprehensive list of all sorts of software that can be made to use avahi.

Other possible things that could be set up to publish services include: ntp server [https://ntp.isc.org/bugs/show_bug.cgi?id=578 ISC ntpd patch] [http://bugzilla.gnome.org/show_bug.cgi?id=333529 GNOME time-admin patch], dns server, ftp server, mail server (for ssmtp automatic relay?), cups print server, gaim, scanner, proxy configuration, distcc [http://lists.samba.org/archive/distcc/2005q4/003183.html patch].

Web applications like SquirrelMail should ship with <?IfModule> sections for mod_dnssd in their apache.conf fragments.

The DebianInstaller supports installation using a network ssh console, but you have to work out what IP to log into. Wouldn't it be nice if this was published as an mdns service?

turning it off

Several people have expressed that they would appreciate a way to turn all of this stuff off, either at the package level (apt-get install disable-zeroconf) and/or temporarily when on an untrusted network.

There should be a well-documented way to do that.

zeroconf task

Once we have a fully working and widely used set of packages, it should be possible to add a task to tasksel to offer zeroconf networking support to new Debian installs. Selecting the task alone would enable resolving mdns names and avahi-daemon. Selecting the task and the desktop task would ensure that the desktop supports zeroconf networking (if it doesn't by default). Selecting the task and a web or print server would make sure that avahi was set up to publish those servers.

discussion

Here is a very interesting blog entry by Jim Gettys, who is working on the one laptop per child project about some of the issues they face: [http://www.gettysfamily.org/wordpress/?p=21 OLPC and system management]:

Imagine an apartment building with kids from several schools; we want them
to be able to go home at night, and, without any additional infrastructure,
work together as they need to.

[...]

We also need to rethink how we configure much of our infrastructure pieces
to be much less dependent the the conventional central, always available
servers. Here are a couple examples: we want IM to always be available; but
do so even without global connectivity or fixed servers. And every kid
should be able to publish content on their laptop, (potentially) available
to others anywhere.

[...]

So one aspect of this is that we probably want to rethink the configuration
of (and sometimes modify) many of our existing services, to allow them to
be used in a much more ad-hoc, mobile, opportunistic fashion.

Relating some of these challanges back to Debian and ZeroConf stuff is very interesting. -- JoeyHess