Setting Up Zero Configuration Networking with Avahi on OpenSUSE

Setting up Bonjour / Zero configuration networking using #OpenSUSE Tumbleweed is a little bit more involved than with some other #linux distros such as Ubuntu. It consists of setting up the avahi service, followed by configuring the firewall.

Avahi is a free zero-configuration networking implementation, including a system for multicast DNS and DNS Service Discovery.

It can be installed and setup as follows:

sudo zypper install avahi avahi-autoipd libavahi-client3 libavahi-common3
sudo systemctl start avahi-daemon
sudo systemctl enable avahi-daemon
sudo systemctl status avahi-daemon

However I noticed that I still couldn't ping any other devices on the network. This is because the default firewall blocks unconfigured services, which makes sense from a security point of view.

For this we start Yast Firewall

YaST Firewall is a configuration tool in openSUSE and SUSE Linux that allows users to manage firewall settings, including opening ports and defining security zones. It has transitioned to using firewalld as the default firewall management system, which provides a more user-friendly interface for configuring network security.

Step 1: List Networking Interfaces

To begin configuring your firewall, you first need to identify the network interface you wish to work with. Run the following command in the terminal:

ip link show

This command will display a list of all available network interfaces on your system. Look for the interface name associated with your active network connection; it may look something like wlp3s0 or eth0. Make a note of the correct interface name, as you’ll need it in the subsequent steps to configure the firewall settings effectively.

Step 2: Configuring the firewall

Open YaST Firewall, under Interfaces, click custom, then select a zone such as home if you're on a home network, and under Interfaces: type the networking interface name from step 1. Then check that under the networking zone mdns is listed under the allowed column. Accept the configuration changes.

You should now be able to ping your other devices!