Public bug reported:

[impact]

with systemd and resolvconf installed, the /etc/resolv.conf file is
managed by resolvconf, and in bug 1817903 the 'options edns0' option is
stripped from the systemd stub resolv.conf so no 'options edns0' will be
present in /etc/resolv.conf (unless added through other means than the
resolvconf-pull-resolved.service).

However, in b/c the local systemd stub resolver does not support
pipelined TCP dns queries, which glibc does by default when falling back
to TCP dns queries (i.e.,  glibc will perform both A and AAAA queries
using a single tcp packet, instead of opening separate tcp connections
for each query).  This results in glibc's dns queries always failing,
when using TCP.  This can be done by adding 'options use-vc' to
/etc/resolv.conf, but also happens in glibc when the dns response does
not fit inside the 512-byte default max, such as for dns A lookups with
a lot of addresses.  This is explained in more detail in bug 1811471.

What this means is that systems installed with either b or c, and that
have systemd and resolvconf installed, will experience the problem from
bug 1811471 - they cannot lookup any address where the response exceeds
512 bytes.

[test case]

install a bionic or cosmic system, which will have systemd installed,
and also install resolvconf.  You may need to reboot after installing
resolvconf to ensure that /etc/resolv.conf has been updated to remove
the 'options edns0' line.  After verifying that line is not in the
/etc/resolv.conf file, the test case from bug 1811471 should fail, or a
simpler one is:

$ ping toomany.ddstreet.org

[regression potential]

any change to systemd and/or resolvconf has a high potential for
regression.  more details here TBD.

[other info]

the best way to fix this is to backport tcp pipelining support in
systemd-resolved.

** Affects: systemd (Ubuntu)
     Importance: Undecided
         Status: New

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

Title:
  systemd-resolved doesn't support tcp pipelining in b/c

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

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to