.TH avahi-daemon.conf 5 User Manuals
.SH NAME
avahi-daemon.conf \- avahi-daemon configuration file
.SH SYNOPSIS
\fB/home/lennart/tmp/avahi/etc/avahi/avahi-daemon.conf
\f1
.SH DESCRIPTION
\fIavahi-daemon.conf\f1 is the configuration file for avahi-daemon.
.SH SECTION [SERVER]
.TP
\fBhost-name=\f1 Set the host name avahi-daemon tries to register on the LAN. If omited defaults to the system host name as set with the sethostname() system call.
.TP
\fBdomain-name=\f1 Set the default domain name avahi-daemon tries to register its host name and services on the LAN in. If omitted defaults to ".local".
.TP
\fBbrowse-domains=\f1 Set a comma separated list of browsing domains (in addition to the default one and those announced inside the default browsing domain). Please note that the user may specify additional browsing domains on the client side, either by setting $AVAHI_BROWSE_DOMAINS to a list of colon separated domains or by adding them to the XDG config file \fI~/.config/avahi/browse-domains\f1 (separated by newlines).
.TP
\fBuse-ipv4=\f1 Takes a boolean value ("yes" or "no"). If set to "no" avahi-daemon will not use IPv4 sockets. Default is "yes".
.TP
\fBuse-ipv6=\f1 Takes a boolean value ("yes" or "no"). If set to "no" avahi-daemon will not use IPv6 sockets. Default is "yes".
.TP
\fBallow-interfaces=\f1 Set a comma separated list of allowed network interfaces that should be used by the avahi-daemon. Traffic on other interfaces will be ignored. If set to an empty list all local interfaces except loopback and point-to-point will be used.
.TP
\fBdeny-interfaces=\f1 Set a comma separated list of network interfaces that should be ignored by avahi-daemon. Other not specified interfaces will be used, unless \fBallow-interfaces=\f1 is set. This option takes precedence over \fBallow-interfaces=\f1.
.TP
\fBcheck-response-ttl=\f1 Takes a boolean value ("yes" or "no"). If set to "yes", an additional security check is activated: incoming IP packets will be ignored unless the IP TTL is 255. Earlier mDNS specifications required this check. Since this feature may be incompatible with newer implementations of mDNS it defaults to "no". On the other hand it provides extra security.
.TP
\fBuse-iff-running=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon monitors the IFF_RUNNING flag bit which is used by some (modern) network drivers to tell user space if a network cable is plugged in (in case of copper ethernet), or the network card is associated with some kind of network (in case of WLAN). If IFF_RUNNING is set avahi-daemon will automatically announce its services on that network. Unfortunately far too many network drivers do not support this flag or support it in a broken way. Therefore this option defaults to "no".
.TP
\fBenable-dbus=\f1 Takes either "yes", "no" or "warn". If set to "yes" avahi-daemon connects to D-Bus, offering an object oriented client API. It is only available if Avahi has been compiled with \fB--enable-dbus\f1 in which case it defaults to "yes". "warn" behaves like "yes", but the daemon starts up even when it fails to connect to a D-Bus daemon. In addition, if the connection to the D-Bus daemon is terminated we try to reconnect. (Unless we are in a chroot() environment where this definitely will fail.) 
.TP
\fBdisallow-other-stacks=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" no other process is allowed to bind to UDP port 5353. This effectively impedes other mDNS stacks from running on the host. Use this as a security measure to make sure that only Avahi is responsible for mDNS traffic. Please note that we do not recommend running multiple mDNS stacks on the same host simultaneously. This hampers reliability and is a waste of resources. However, to not annoy people this option defaults to "no".
.TP
\fBallow-point-to-point=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will make use of interfaces with the POINTOPOINT flag set. This option defaults to "no" as it might make mDNS unreliable due to usually large latencies with such links and opens a potential security hole by allowing mDNS access from Internet connections. Use with care and YMMV!
.TP
\fBcache-entries-max=\f1 Takes an unsigned integer specifying how many resource records are cached per interface. Bigger values allow mDNS work correctly in large LANs but also increase memory consumption.
.TP
\fBclients-max=\f1 Takes an unsigned integer. The maximum number of concurrent D-Bus clients allowed. If the maximum number is reached further clients will be refused until at least one existing client disconnects.
.TP
\fBobjects-per-client-max=\f1 Takes an unsigned integer. The maximum number of objects (entry groups, browsers, resolvers) that may be registered per D-Bus client at a time. If the maximum number is reached further object creation will be refused until at least one object is freed.
.TP
\fBentries-per-entry-group-max=\f1 Takes an unsigned integer. The maximum number of entries (resource records) per entry group registered by a D-Bus client at a time. If the maximum number is reached further resource records may not be added to an entry group.
.TP
\fBratelimit-interval-usec=\f1 Takes an unsigned integer. Sets the per-interface packet rate-limiting interval parameter. Together with \fBratelimit-burst=\f1 this may be used to control the maximum number of packets Avahi will generated in a specific period of time on an interface.
.TP
\fBratelimit-burst=\f1 Takes an unsigned integer. Sets the per-interface packet rate-limiting burst parameter. Together with \fBratelimit-interval-usec=\f1 this may be used to control the maximum number of packets Avahi will generated in a specific period of time on an interface.
.SH SECTION [WIDE-AREA]
.TP
\fBenable-wide-area=\f1 Takes a boolean value ("yes" or "no"). Enable wide-area DNS-SD, aka DNS-SD over unicast DNS. If this is enabled only domains ending in .local will be resolved on mDNS, all other domains are resolved via unicast DNS. If you want to maintain multiple different multicast DNS domains even with this option enabled we encourage you to use subdomains of .local, such as "kitchen.local". This option defaults to "yes".
.SH SECTION [PUBLISH]
.TP
\fBdisable-publishing=\f1 Takes a boolean value ("yes" or "no"). If set to "yes", no record will be published by Avahi, not even address records for the local host. Avahi will be started in a querying-only mode. Use this is a security measure. This option defaults to "no"
.TP
\fBdisable-user-service-publishing=\f1 Takes a boolean value ("yes" or "no"). If set to "yes", Avahi will still publish address records and suchlike but will not allow user applications to publish services. Use this is a security measure. This option defaults to "no"
.TP
\fBadd-service-cookie=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" an implicit TXT entry will be added to all locally registered services, containing a cookie value which is chosen randomly on daemon startup. This can be used to detect if two services on two different interfaces/protocols are actually identical. Defaults to "no".
.TP
\fBpublish-addresses=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will register mDNS address records for all local IP addresses. Unless you want to use avahi-daemon exclusively for browsing it's recommended to enable this. If you plan to register local services you need to enable this option. Defaults to "yes".
.TP
\fBpublish-hinfo=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will register an mDNS HINFO record on all interfaces which contains information about the local operating system and CPU, which might be useful for administrative purposes. This is recommended by the mDNS specification but not required. For the sake of privacy you might choose to disable this feature. Defaults to "yes."
.TP
\fBpublish-workstation=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will register a service of type "_workstation._tcp" on the local LAN. This might be useful for administrative purposes (i.e. browse for all PCs on the LAN), but is not required or recommended by any specification. Newer MacOS X releases register a service of this type. Defaults to "yes".
.TP
\fBpublish-domain=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will announce the locally used domain name (see above) for browsing by other hosts. Defaults to "yes".
.TP
\fBpublish-dns-servers=\f1 Takes a comma separated list of IP addresses for unicast DNS servers. You can use this to announce unicast DNS servers via mDNS. When used in conjunction with avahi-dnsconfd on the client side this allows DHCP-like configuration of unicast DNS servers.
.TP
\fBpublish-resolv-conf-dns-servers=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will publish the unicast DNS servers specified in \fI/etc/resolv.conf\f1 in addition to those specified with \fBpublish-dns-servers\f1. Send avahi-daemon a SIGHUP to have it reload this file. Defaults to "no".
.TP
\fBpublish-aaaa-on-ipv4=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will publish an IPv6 AAAA record via IPv4, i.e. the local IPv6 addresses can be resolved using an IPv4 transport. Only useful when IPv4 is enabled with \fBuse-ipv4=true\f1. Defaults to "yes".
.TP
\fBpublish-a-on-ipv6=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will publish an IPv4 A record via IPv6, i.e. the local IPv4 addresses can be resolved using an IPv6 transport. Only useful when IPv6 is enabled with \fBuse-ipv6=true\f1. Defaults to "no".
.SH SECTION [REFLECTOR]
.TP
\fBenable-reflector=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will reflect incoming mDNS requests to all local network interfaces, effectively allowing clients to browse mDNS/DNS-SD services on all networks connected to the gateway. The gateway is somewhat intelligent and should work with all kinds of mDNS traffic, though some functionality is lost (specifically the unicast reply bit, which is used rarely anyway). Make sure to not run multiple reflectors between the same networks, this might cause them to play Ping Pong with mDNS packets. Defaults to "no".
.TP
\fBreflect-ipv=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" and \fBenable-reflector\f1 is enabled, avahi-daemon will forward mDNS traffic between IPv4 and IPv6, which is usually not recommended. Defaults to "no".
.SH SECTION [RLIMITS]
This section is used to define system resource limits for the daemon. See \fBsetrlimit(2)\f1 for more information. If any of the options is not specified in the configuration file, avahi-daemon does not change it from the system defaults.
.TP
\fBrlimit-as=\f1 Value in bytes for RLIMIT_AS (maximum size of the process's virtual memory). Sensible values are heavily system dependent.
.TP
\fBrlimit-core=\f1 Value in bytes for RLIMIT_CORE (maximum core file size). Unless you want to debug avahi-daemon, it is safe to set this to 0.
.TP
\fBrlimit-data=\f1 Value in bytes for RLIMIT_DATA (maximum size of the process's data segment). Sensible values are heavily system dependent.
.TP
\fBrlimit-fsize=\f1 Value for RLIMIT_FSIZE (maximum size of files the process may create). Since avahi-daemon shouldn't write any files to disk, it is safe to set this to 0.
.TP
\fBrlimit-nofile=\f1 Value for RLIMIT_NOFILE (open file descriptors). avahi-daemon shouldn't need more than 15 to 20 open file descriptors concurrently.
.TP
\fBrlimit-stack=\f1 Value in bytes for RLIMIT_STACK (maximum size of the process stack). Sensible values are heavily system dependent.
.TP
\fBrlimit-nproc=\f1 Value for RLIMIT_NPROC (number of process of user). avahi-daemon forks of a helper process on systems where \fBchroot(2)\f1 is available. Therefore this value should not be set below 2.
.SH AUTHORS
The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
.SH SEE ALSO
\fBavahi-daemon(8)\f1, \fBavahi-dnsconfd(8)\f1
.SH COMMENTS
This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
