LinuxCommandLibrary

avahi-browse

Discover services available on the local network

TLDR

List services available on the local network along with their addresses and ports, ignoring ones on the local machine

$ avahi-browse [[-a|--all]] [[-r|--resolve]] [[-l|--ignore-local]]
copy

Quickly list services in the local network in SSV format for scripts
$ avahi-browse [[-a|--all]] [[-t|--terminate]] [[-p|--parsable]]
copy

List domains in the neighbourhood
$ avahi-browse [[-D|--browse-domains]]
copy

Limit the search to a particular domain
$ avahi-browse [[-a|--all]] --domain=[domain]
copy

SYNOPSIS

avahi-browse [options] [{servicetype | #domain | all}]

PARAMETERS

-h, --help
    Show help page

-V, --version
    Show version information

-v, --verbose
    More verbose output

-q, --quiet
    Less verbose output (implies -t)

-t, --terminate
    Terminate after printing all discovered services

-k, --check-full
    Check for full services (implies -r)

-r, --resolve
    Resolve service addresses

-a, --all
    Browse all service types

-d DOMAIN, --domain=DOMAIN
    Browse for services under DOMAIN

-i, --ignore-local
    Ignore local services

-z, --our-services
    Browse for our own services

DESCRIPTION

avahi-browse is a command-line tool from the Avahi suite, which implements Zeroconf networking (multicast DNS and DNS-SD) for Linux and Unix-like systems. It discovers and lists services advertised on the local network, such as printers (_ipp._tcp), web servers (_http._tcp), file shares (_smb._tcp), media renderers, or custom application services.

Avahi enables zero-configuration networking, allowing devices to automatically find each other without manual IP configuration or DNS servers. Running avahi-browse monitors multicast traffic on all network interfaces, printing real-time updates as services appear (=), change (+), or disappear (-). Output includes interface, protocol (IPv4/IPv6), domain, flags, service name, type, host, address, port, and TXT records.

Common uses: network discovery during troubleshooting, finding AirPrint printers, Chromecast devices, or Samba shares. Specify a service type for targeted browsing, use -a for all services, or pipe to grep for filtering. It requires the avahi-daemon service running and operates only within multicast scope (typically LAN). Press Ctrl+C to stop the continuous stream.

CAVEATS

Requires avahi-daemon running; limited to local multicast networks (LAN); continuous output until Ctrl+C; may miss services if firewall blocks UDP 5353.

USAGE EXAMPLES

avahi-browse -a (all services)
avahi-browse _ipp._tcp (printers)
avahi-browse -r -k --terminate _http._tcp (resolve HTTP, stop after)

SAMPLE OUTPUT

+ enp0s3 IPv4 MyPrinter _ipp._tcp local
hostname.local 192.168.1.100 631 txt="txtvers=1 rp=printers/paper"

HISTORY

Developed as part of Avahi project (2006) by Lennart Poettering and Trent Lloyd; open-source Zeroconf for Linux, inspired by Apple's Bonjour; widely used in distributions like Ubuntu, Fedora.

SEE ALSO

avahi-daemon(8), avahi-publish-service(1), avahi-resolve(1), avahi-discover(1)

Copied to clipboard