Package: klibc-utils
Version: 2.0.4-9
Severity: normal

Dear Maintainers,
It appears to me that there is a misalignment between initramfs network 
configuration scripts and tools in Debian and the Kernel nfsroot documentation, 
which results in a Denial of Service (networking unavailability) in the 
initramfs environment, if Debian user configures the kernel command line as per 
the kernel docs.

In the initramfs-tools-core==0.130 package, there is a file 
/usr/share/initramfs-tools/scripts/functions, which contains a 
configure_networking() function. This function claims to `support ip options, 
see linux sources Documentation/filesystems/nfs/nfsroot.txt`. This function 
does not perform network configuration on its own, it uses a ipconfig tool from 
the klibc-utils package.

When checking the latest nfsroot.txt at 
https://www.kernel.org/doc/Documentation/filesystems/nfs/nfsroot.txt, it 
appears to me that the latest syntax of the ip= parameter supports also DNS and 
NTP servers. Copying and pasting for your reference:
        
ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>:<dns0-ip>:<dns1-ip>:<ntp0-ip>

On the other hand, the ipconfig utility, at least the version in package 
klibc-utils==2.0.4-9, does seem to support neither the DNS nor NTP options. 
Copying from 
https://salsa.debian.org/kernel-team/klibc/blob/master/usr/kinit/ipconfig/README.ipconfig
 and pasting here:

        <client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>


In general, it is quite hard to find this discrepancy as Google does not 
usually hint you at the klibc-utils package sources/readme.
If one uses static IP configuration with even a single DNS IP to the kernel 
command line, e.g.:
ip=192.0.2.2::192.0.2.1:255.255.255.0:my.host.name.com:eth0:none:8.8.8.8
the ipconfig utility fails to configure networking completely, resulting in no 
networking in the initramfs environment.

I believe the ipconfig utility should be fixed:

  *   to be in line with nfsroot.txt (supporting DNS and possibly even NTP 
configuration)
  *   not to fail if additional parameters are even introduced by the kernel 
developers and passed in on the command line by Debian users

It is true that this should be primarily handled upstream, however it is not 
clear to me how to report this issue to upstream, more specifically who is the 
upstream maintainer of this package.

(Also, there is currently no initramfs networking support for IPv6, the current 
internet protocol; there is a separate bug report/feature request for this, 
627164.)

Thank you for your attention to this issue.

With kind regards,
Radek Zajic

-- System Information:
Debian Release: 9.9
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-9-amd64 (SMP w/12 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages klibc-utils depends on:
ii  libklibc  2.0.4-9

klibc-utils recommends no packages.

klibc-utils suggests no packages.

-- no debconf information

Reply via email to