Service Discovery with Avahi


Configuring Avahi under pfSense 2.1.3.

Avahi is a free zero-configuration networking implementation, including a system for multicast DNS/DNS-SD service discovery. It is licensed under the GNU Lesser General Public License (LGPL). It allows programs to publish and discover services and hosts running on a local network.

Avahi implements the Apple Zeroconf specification, mDNS, DNS-SD and RFC 3927 IPv4ALL. other implementations include Apple’s Bonjour framework. Avahi provides a set of language bindings and ships with most Linux and BSD distributions. Because of its modularized architecture, major desktop components like GNOME’s Virtual File System and the KDE input/output architecture already integrate Avahi.

Most Linux distros have Avahi available in their repositories, and thus installing Avahi is as simple as invoking apt-get at the command line:

sudo apt-get install avahi-daemon

This will work unless the graphical front end does not have Zeroconf support built into it, in which case you would have to download and compile Avahi from sources, and then recompile the desktop environment to include Zeroconf support.

Service Discovery with Avahi: Installation and Configuration

Fortunately, getting Avahi to work under pfSense is very simple. To install Avahi in pfSense, navigate to System -> Packages, and scroll down to “Avahi”. Press the “plus” button next to the listing, and on the next page, press “Confirm” to confirm the installation. The installation will take a few minutes to complete.

Once installation is complete, there will be a new item on the “Services” menu named “Avahi“. If you navigate to Services -> Avahi, you can configure the settings for Avahi discovery. The “Enable” check box enables the Avahi Bonjour/Zeroconfig proxy. The “Browse domains” edit box allows you to enter domains you would like to have proxied. The “Deny interfaces” list box allows you to specify interfaces that you do not want Avahi to listen on (WAN is disabled by default). Finally, the “Disable IPv6” and “Disable IPv4” disables IPv6 and IPv4 support in Avahi respectively.

Once you have Avahi enabled, systems on interfaces on which Avahi is listening should be able to publish and/or discover Bonjour/Zeroconfig services.

External Links:

The official Avahi web site

Avahi on Wikipedia

© 2013 David Zientara. All rights reserved. Privacy Policy