Avahi
Avahi is an implementation of Zeroconf, the zero-configuration method for network services. This would otherwise be accomplished through local DNS resolution.
Contents
Installation
Advertising Services
Avahi uses all /etc/avahi/services/*.service files that are readable by the avahi user and group. These take the form of structured XML. For example, an FTP service:
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name>FTP</name>
<service>
<type>_ftp._tcp</type>
<port>21</port>
</service>
</service-group>
Networking
Avahi broadcasts over port 5353. A common pitfall is failing to account for this in the firewall. See details in the articles for UFW.
Inspecting Services
Name Resolution
To make use of the .local domain, an additional dependency (commonly named nss-mdns) is required.
Insert mdns_minimal [NOTFOUND=return] into /etc/nsswitch.conf, as below.
hosts: files mymachines myhostname mdns_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns
Terminal
avahi-browse --all
