LinuxCommandLibrary

avahi-browse-domains

List available Avahi browsing domains

SYNOPSIS

avahi-browse-domains [options]

PARAMETERS

-v, --verbose
    Enables verbose output, providing more detailed information about the operation.

-t, --terse
    Produces terse output, suitable for scripting and machine parsing.

-s, --stay
    Causes the command to stay running and continuously print new domains as they appear or disappear.

-a, --all
    Shows all entries, including those internally managed by the Avahi daemon.

--short
    Outputs only the domain names, without additional status information.

--no-dbus
    Disables D-Bus communication, attempting to connect to the Avahi daemon via a local socket instead.

--debug
    Enables debug logging, useful for troubleshooting issues with the Avahi daemon or the command itself.

DESCRIPTION

The avahi-browse-domains command is a utility from the Avahi project, which provides a free software implementation of Apple's Zero-configuration Networking (Bonjour/Rendezvous) specification. It is used to discover and list all available browsing domains known to the local Avahi daemon. These domains typically include the local. domain for Multicast DNS (mDNS) resolution, but can also encompass unicast DNS domains configured for DNS Service Discovery (DNS-SD).

This tool is invaluable for administrators and users needing to understand the network's service discovery landscape. By querying the avahi-daemon via D-Bus, it reveals where services can be announced and resolved, facilitating the management of networked resources without manual configuration of IP addresses or DNS records. Its output helps in debugging network discovery issues or simply in exploring available network segments for services.

CAVEATS

The command requires the avahi-daemon service to be running in the background, as it acts as a client communicating with this daemon.
Without the daemon, or if D-Bus communication is interrupted (and --no-dbus isn't an effective fallback), the command will fail to list any domains.
It only reports domains known to the local Avahi instance, which might not encompass all possible domains on larger, segmented networks unless proper DNS-SD bridging is configured.

OUTPUT FORMAT

When run without the --short or --terse options, avahi-browse-domains typically outputs lines prefixed with `+` or `-` to indicate additions or removals of domains, followed by the domain type and name. For example, `+;eth0;IPv4;local` indicates the discovery of the `local` domain on `eth0` using IPv4.

DAEMON INTERACTION

This command operates by communicating with the running avahi-daemon via D-Bus. The daemon is responsible for performing the actual mDNS/DNS-SD discovery and advertising, while avahi-browse-domains acts as a client to query and display the daemon's gathered information about available domains. This client-server architecture ensures that discovery processes run efficiently in the background.

HISTORY

The Avahi project, including avahi-browse-domains, originated as a free and open-source implementation of Apple's Zero-configuration Networking (Zeroconf), initially known as Rendezvous and later Bonjour.
It was primarily developed by Lennart Poettering and Trent W. Graham, with initial releases around 2005.
The command provides a core client utility for Avahi's service discovery framework on Linux and Unix-like systems, enabling programmatic or manual exploration of network domains without relying on proprietary solutions.
Its fundamental purpose has remained consistent since its inception, serving as a vital component of the Avahi suite.

SEE ALSO

avahi-browse(1), avahi-daemon(8), avahi-resolve(1), dns-sd(1), avahi.conf(5)

Copied to clipboard