Wrong entry in avahi-dnsconfd.service

Got error “killing child” in log.
Internet says:
/usr/lib/systemd/system/avahi-dnsconfd.service

[Unit]
Description=Avahi DNS Configuration Daemon
Requires=avahi-daemon.socket avahi-daemon.service
After=avahi-daemon.service

would be correct (not: avahi-daemon.socket)

EDIT:
source:
https://unix.stackexchange.com/questions/255353/multicasting-multiple-mdns-names

And systemctl cat avahi-dnsconfd says:

# /usr/lib/systemd/system/avahi-dnsconfd.service
# This file is part of avahi.
#
# avahi is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# avahi is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
# License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with avahi; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.

[Unit]
Description=Avahi DNS Configuration Daemon
Requires=avahi-daemon.socket avahi-daemon.service
After=avahi-daemon.socket

[Service]
Type=simple
ExecStart=/usr/bin/avahi-dnsconfd -s

[Install]
WantedBy=multi-user.target

I see no difference. I don’t see the point of your support request…

It is just a thought - if it is a domino issue - so to speak… and I cannot say if it is related - as that would require more digging into your exact issue - please see Avahi zeroconf browser zeigt nichts an.

The issue and a temporary workaround has also been provided in the Announcements threads in the known issues comment.

Yours (standard):

[Unit]
Description=Avahi DNS Configuration Daemon
Requires=avahi-daemon.socket avahi-daemon.service
After=avahi-daemon.socket

Correct:

[Unit]
Description=Avahi DNS Configuration Daemon
Requires=avahi-daemon.socket avahi-daemon.service
After=avahi-daemon.service

Look at “After” :innocent:

avahi-dnsconfd.service must start AFTER avahi-daemon.service.
Later starts avahi-daemon.socket. And thens start avahi-dnsconfd.service
Question: o.K or not.
EDIT:
to use systemd-resolved.service too,
/etc/systemd/resolved.conf should contain

MulticastDNS=no
LLMNR=no

better - use : /etc/systemd/resolved.conf.d/custom.conf

1 Like

This workaround is required too, thank you.

1 Like

I am not sure I understand your logic :thinking:

I won’t say I have the stone of wise - my understanding appears to be opposite of yours.

The avahi-dnsconfd.service relies on the avahi-daemon.service which can be either running (the service unit is active) or activated on demand using the socket.

So far OK

Wrong order - you can disable the avahi-daemon.service - accessing the avahi-daemon.socket will activate the service

The avahi-dnsconfd will poke the socket to get the service - if it is not running - it will be started.

Either way the result is a running avahi-damon.service which is required for the dnsconfd.service to be functional.

3 Likes

You are absolutely correct; source →
https://unix.stackexchange.com/questions/255353/multicasting-multiple-mdns-names
I asked “Perplexity”…
How can I delay avahi-dnsconfd startup until the avahi-daemon is fully ready
Answer:

  • Edit or override the avahi-dnsconfd.service file (usually found in /etc/systemd/system/ or /lib/systemd/system/).
  • Add the following directives to ensure it waits for avahi-daemon:
[Unit]
After=avahi-daemon.service
Requires=avahi-daemon.service
  • This ensures avahi-dnsconfd will not start until avahi-daemon is started.
    (and prevents the message “Killing child”)

I lost the original site…
EDIT:
Avahi (avahi-daemon.service / avahi-daemon.socket / avahi-dnsconfd.service)
is working without complaining in journal,
systemd-resolved.service too. (using all changes made).

Who did you ask? an AI?

While the answer can be regarded as correct it is not the answer to your topic.

So I don’t think marking your own comment as solution is valid.

If you are really certain there is a bug in the avahi package you should really take it upstream and explain to them why they got it wrong.

1 Like