• Bug#1100720: resolvconf: IPv4 resolvers prioritized over IPv6 when usin

    From Kevin Otte@21:1/5 to All on Mon Mar 17 19:50:02 2025
    This is a multi-part MIME message sent by reportbug.


    Package: resolvconf
    Version: 1.92
    Severity: normal
    Tags: ipv6 patch

    Dear Maintainer,

    When using dhcpcd-base, as is now default with ifupdown, the resolvers discovered via DHCP are placed above those from RDNSS.
    It appears that somewhere along the line dhcpcd changed the filenames used to render this information.
    Namely, DHCP discovered information is written to ${interface}.dhcp and RDNSS information is written to ${interface}.ra

    Since these patterns are not called out in the interface-order file, it falls through to the glob at the end of the file,
    and 'dhcp' comes before 'ra' in alpha sorting.

    --
    root@minnehaha:~# resolvconf -l
    # resolv.conf from eth0.dhcp
    nameserver 172.31.3.30
    # resolv.conf from eth0.ra
    search home.nivex.net int.home.nivex.net
    nameserver fd60:e0:a0f4:121::10

    root@minnehaha:~# cat /etc/resolv.conf
    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
    # 127.0.0.53 is the systemd-resolved stub resolver.
    # run "resolvectl status" to see details about the actual nameservers.

    nameserver 172.31.3.30
    nameserver fd60:e0:a0f4:121::10
    search home.nivex.net int.home.nivex.net
    --

    The simplest solution would be to include patterns for '.ra' near their inet6 counterparts.
    I have included a patch for this that produces the desired result on my system.

    --
    root@minnehaha:/tmp# resolvconf -l
    # resolv.conf from eth0.ra
    search home.nivex.net int.home.nivex.net
    nameserver fd60:e0:a0f4:121::10
    # resolv.conf from eth0.dhcp
    nameserver 172.31.3.30

    root@minnehaha:/tmp# cat /etc/resolv.conf
    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
    # 127.0.0.53 is the systemd-resolved stub resolver.
    # run "resolvectl status" to see details about the actual nameservers.

    nameserver fd60:e0:a0f4:121::10
    nameserver 172.31.3.30
    search home.nivex.net int.home.nivex.net
    --

    However, I think this file is ripe for a larger cleanup effort.
    Not only has dhcpcd apparently changed its output format, pump hasn't been a thing in many years.

    -- System Information:
    Debian Release: trixie/sid
    APT prefers testing
    APT policy: (500, 'testing')
    Architecture: amd64 (x86_64)

    Kernel: Linux 6.12.12+bpo-amd64 (SMP w/4 CPU threads; PREEMPT)
    Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
    Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
    Shell: /bin/sh linked to /usr/bin/dash
    Init: systemd (via /run/systemd/system)

    Versions of packages resolvconf depends on:
    ii debconf [debconf-2.0] 1.5.89
    ii sysvinit-utils [lsb-base] 3.14-3

    resolvconf recommends no packages.

    resolvconf suggests no packages.

    -- debconf information excluded

    --- etc/resolvconf/interface-order 2023-11-26 14:18:54.000000000 +0000
    +++ /etc/resolvconf/interface-order 2025-03-17 18:24:58.031040855 +0000
    @@ -11,21 +11,25 @@
    em+([0-9])?(_+([0-9]))*
    p+([0-9])p+([0-9])?(_+([0-9]))*
    en+([bcosxpP])*([^.]).inet6
    +en+([bcosxpP])*([^.]).ra
    en+([bcosxpP])*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
    en+([bcosxpP])*([^.]).inet
    en+([bcosxpP])*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
    en+([bcosxpP])*
    @(br|eth)*([^.]).inet6
    +@(br|eth)*([^.]).ra
    @(br|eth)*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
    @(br|eth)*([^.]).inet
    @(br|eth)*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
    @(br|eth)*
    wl+([bcosxpP])*([^.]).inet6
    +wl+([bcosxpP])*([^.]).ra
    wl+([bcosxpP])*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
    wl+([bcosxpP])*([^.]).inet
    wl+([bcosxpP])*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
    wl+([bcosxpP])*
    @(ath|wifi|wlan)*([^.]).inet6
    +@(ath|wifi|wlan)*([^.]).ra
    @(ath|wifi|wlan)*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
    @(ath|wifi|wlan)*([^.]).inet
    @(ath|wifi|wlan)*([^
  • From Kevin Otte@21:1/5 to All on Tue Mar 18 02:00:01 2025
    This is a multi-part message in MIME format.
    This is a problem with rdnssd as well because it writes to 000.rdnssd
    rather than any named interface file.

    LS0tIGV0Yy9yZXNvbHZjb25mL2ludGVyZmFjZS1vcmRlcgkyMDIzLTExLTI2IDE0OjE4OjU0 LjAwMDAwMDAwMCArMDAwMAorKysgL3RtcC9pbnRlcmZhY2Utb3JkZXIJMjAyNS0wMy0xOCAw MDo0Mjo1NS4zMjgyNzI3MTEgKzAwMDAKQEAgLTgsNiArOCw3IEBACiB0YXAqCiBoc28qCiB2 cG4qCiswMDAucmRuc3NkCiBlbSsoWzAtOV0pPyhfKyhbMC05XSkpKgogcCsoWzAtOV0pcCso WzAtOV0pPyhfKyhbMC05XSkpKgogZW4rKFtiY29zeHBQXSkqKFteLl0pLmluZXQ2Cg==

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)