[Bug 2003025] Re: systemd/resolved can't enable mdns permanently

Nick Rosbrook 2003025 at bugs.launchpad.net
Wed Jan 25 18:53:28 UTC 2023


The option doesn't literally get appended to the original file, but when
the settings are applied it will use the drop-in conf as well. What does
resolvectl mdns show? The rest of your output looks expected (networkctl
status won't mention the use of the drop-in config). I have tested this
on 22.04 server and it works, so please double check everything.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/2003025

Title:
  systemd/resolved can't enable mdns permanently

Status in systemd package in Ubuntu:
  Incomplete

Bug description:
  I currently ran into the problem, that systemd (i.e. its resolved)
  cannot properly configured to run with mdns.

  
  I'm currently setting up some machines in a network with a poor router which routes and offers DHCP, but does not put the DHCP clients into a DNS domain, so the machines need to use mdns to find each other. 

  
  In order to have systemd/resolved use mdns, two steps are necessary: 

  1. MulticastDNS=yes must be put into /etc/systemd/resolved.conf and
  resolved restarted to enable it in general.

  
  2. It must be enabled per interface. On the command line this can be done with
  resolvectl mdns eth0 yes

  result:
  # resolvectl mdns 
  Global: yes
  Link 63 (eth0): yes


  and it works.

  
  Problem: It cannot be done automatically in a server/LXD image. Im having this problem inside the LXD 22.04 image. 

  
  a) man pages suggest that /etc/systemd/network/eth0.network 
  [Match]
  Name=eth0

  [Network]
  MulticastDNS=yes


  would do the job, but it doesn't. It seems to be completely ignored.

  
  The reason seems to be that 
  networkctl status eth0 
  shows 

                    Network File: /run/systemd/network/10-netplan-
  eth0.network

  
  so it seems to be overridden by netplan. 



  b) netplan itself does not seem to support the MulticastDNS settings.


  
  c) On Desktop Machines I found a workaround with NetworkManager, but on server and LXD images, Network Manager does not exist. 


  
  So I do not see a way to have this configured permanently (other than writing a systemd unit). 

  
  But:

  
  I need to configure the machines / LXD machines using cloud-init, in order to have the installation pull packages from a server to be found with mdns. 

  I tried to run 
  resolvectl mdns eth0 yes

  as a bootcmd in Cloud-init, but this has no effect, because it is too
  early.

  
  I tried to run it as a runcmd, and it works but it is too late, because package installation has already failed. 


  So where in this scrub between systemd and netplan could mdns be
  enabled in a way, that the automatic installation would work?

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/2003025/+subscriptions




More information about the foundations-bugs mailing list