What Is Avahi Daemon on Linux? Install, Enable, and Verify It

INSTALL AVAHI ON LINUX DISTRIBUTIONS (1)

Avahi is the multicast DNS and DNS Service Discovery daemon used on many Linux systems, so install the package your distribution provides and enable its systemd unit only when local service discovery is useful.

What avahi-daemon does

Avahi announces host and service records on the local network with multicast DNS, also called mDNS, and DNS Service Discovery, also called DNS-SD, which lets a printer, SSH host, or media service become discoverable without a conventional DNS record for each device.

DHCP or a static network configuration handles IP addressing, while Avahi makes a reachable local service easier to locate.

Choose the package for your distribution

The daemon package and service name differ across distribution families, so start with the package manager that belongs to your system and then use the matching systemd unit.

Distribution familyPackage commandService command
Debian and Ubuntusudo apt install avahi-daemonsudo systemctl enable –now avahi-daemon.service
Fedora and RHELsudo dnf install avahisudo systemctl enable –now avahi-daemon.service
Arch Linuxsudo pacman -S avahisudo systemctl enable –now avahi-daemon.service

Install Avahi on Debian or Ubuntu

Refresh package metadata and then install avahi-daemon, which owns the daemon and its systemd unit on Debian-family systems.

sudo apt update
sudo apt install avahi-daemon

The retained terminal capture shows the package-management step, while your output will vary with the repositories configured on your system.

Update And Upgrade Repo 1
Update And Upgrade Repo 1

The next capture belongs with the install command, and avah-daemon omits the i so it does not name the Debian package.

Installing Avahi Daemon
Installing Avahi Daemon

Install Avahi on Fedora, RHEL, or Arch Linux

Fedora, RHEL-family systems, and Arch package the daemon as avahi, so use the package manager that belongs to your distribution instead of copying an apt command to a different family.

sudo dnf install avahi
# or, on Arch Linux
sudo pacman -S avahi

If DNF cannot find a package, check your Fedora repository management before changing service settings because package installation and a running daemon are separate states.

Enable and verify the daemon

Enable the unit and start it in the same command, then use the status check to confirm that systemd loaded the unit and the daemon is active.

sudo systemctl enable --now avahi-daemon.service
systemctl status avahi-daemon.service

The retained service capture shows the two operations separately, while systems that use socket activation can use avahi-daemon.socket as documented by the ArchWiki.

Starting And Enabling Avahi
Starting And Enabling Avahi

Check discovery without changing configuration

Install the optional client utilities when you need to inspect advertised DNS-SD services on the local link and distinguish discovery from hostname resolution.

sudo apt install avahi-utils
avahi-browse --all --resolve

Use the result with your networking and DNS configuration when a .local name does not resolve because the daemon can be active while the resolver still lacks multicast DNS configuration.

Use Avahi only where local discovery helps

Avahi is useful when a workstation needs to find a nearby printer, an SSH host, or a shared service without maintaining local DNS entries, but pair file discovery with an explicit install and configure Samba configuration rather than treating discovery as access control.

Service discovery sends multicast traffic on the local link, so review Linux firewall and access-control choices and network policy before enabling it on a server or a network where unsolicited advertisements are not appropriate.

Verify the result

  1. Run systemctl status avahi-daemon.service and confirm that the unit is active.
  2. Run the Avahi browse command from the preceding code block when avahi-utils is installed and inspect the services that appear.
  3. Test the specific service that you expect to discover, such as an SSH connection or a printer queue.
  4. If you use Fedora, keep the system package source healthy with the after-install Fedora checklist.

Frequently asked questions

These answers separate the daemon’s discovery role from IP addressing and local resolver configuration.

What is avahi-daemon on Linux?

avahi-daemon is the Linux daemon that implements multicast DNS and DNS Service Discovery. It lets devices and services announce themselves and discover local services without a conventional unicast DNS record for each device.

How do I enable Avahi at boot?

On a systemd distribution, enable and start avahi-daemon.service, then inspect the unit with systemctl status avahi-daemon.service.

Why does a .local name not resolve after Avahi starts?

Avahi publishes multicast DNS, but local name resolution also depends on the system name-service configuration and possible interaction with systemd-resolved. Check the resolver configuration and avoid running conflicting multicast DNS responders for the same interface.

Does Avahi assign IP addresses?

No. Avahi provides multicast DNS and DNS Service Discovery. DHCP, static configuration, or another network service assigns an IP address.

Next step

Enable Avahi only after you can name the local service you need to discover. Then verify that service directly, because discovery advertises an endpoint but does not prove that the endpoint accepts a connection.