[Bug 2007728] Re: resolved results differ from those from its current upstream server.

Frank Trampe 2007728 at bugs.launchpad.net
Wed Mar 1 16:05:30 UTC 2023


The first two servers do indeed provide the .local domains. The possible
violation of RFC 6762 does not explain the inconsistency of the results
or the regression from Ubuntu 18.04 and Ubuntu 20.04. There is no case
in which the correct behavior for a single configuration is to query the
"Current DNS Server" for the .local name sometimes and mDNS other times.
This also does not explain why the "Current DNS Server" selection
sometimes fails to observe the order provided in the DHCP response. If
resolved ignores the server ordering and the low-priority servers lack
the internal names, even switching the suffix of the internal names is
insufficient to provide the desired results. We have reverted the
clients in question to Ubuntu 20.04 for now, and they work correctly.

-- 
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/2007728

Title:
  resolved results differ from those from its current upstream server.

Status in systemd package in Ubuntu:
  Incomplete

Bug description:
  On a network with multiple DNS servers provided by DHCP, only the
  first two of which cover local names, resolved returns universally
  known names but fails to return the special names even when the
  "Current DNS Server" shown by `resolvectl status` returns the special
  names.

  Suppose that 172.16.9.5 and 172.16.10.5 are the two internal DNS
  servers with the local names. Windows servers with Active Directory
  enabled in this case. The DHCP server (a Cisco 4451 in this case)
  provides DNS servers 172.16.9.5, 172.16.10.5, 192.168.0.1, and
  8.8.8.8. `resolvectl status` shows all of these as "DNS Servers" and
  172.16.9.5 as the "Current DNS Server".

  `host localdomain.local` returns SRVFAIL, and `host localdomain.local
  127.0.0.53` returns SRVFAIL, but `host localdomain.local 172.16.9.5`
  returns the correct result. This all happens regardless of the
  "Current DNS Server".

  Sometimes the "Current DNS Server" switches to 8.8.8.8 for reasons
  that are not clear even when the other servers are working properly,
  which seems to violate the principle of RFC 2132 section 3.8 that
  servers are listed in order of preference.

  So, in short, it seems that the correct behavior is that (1) resolved
  returns results consistent with its "Current DNS Server" and (2)
  resolved picks as its "Current DNS Server" the first reachable server
  in the list. The current behavior is that (1) resolved returns results
  sometimes inconsistent with its "Current DNS Server" and (2) resolved
  sometimes picks as its "Current DNS Server" some server other than the
  first reachable server in the list. The first issue is consistently
  reproducible, and the second is readily reproducible in a short period
  of time.

  The problem appears on Ubuntu 22.04 and seems not to be present on
  Ubuntu 18.04.

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




More information about the foundations-bugs mailing list