I've just took a read of the code that landed. Over all, the new code is
much more suitable for SRU. I think it still has some issues though.

a.) we use 'grep' and 'cat' extensively in the new code. Most could be
replaced with case statements or other shell builtin such as 'case' and
'read' and avoid subprocesses and their overhead. This is not broken,
but slower boot as a result.

b.) ipconfig would set the 'hostname' in the dhcp request to the value
in the 5th token of ip=. I do not believe that is being done now.

c.) at least 1 dhclient process will end up running after exiting the
initramfs exits, and won't' have access to its open files. I'm not sure
what the behavior will be, but its possible that this process could
decide at re-lease time to take the interface down since it would not
have its lease database around. I say at least due to bug 1633619. If we
ever re-try, I suspect we'll have one for each loop.

Do we know what happens to this uprooted dhclient process?

d.) The ipconfig path that was left on will now have 'sleep's inserted
and will as a result take much longer than necessary if it ever does not
get a lease on the first try.

'b' is definitely a change in behavior. We really need to know what
happens on 'c', and 'd' seems like it should be fixed as it negatively
affects the 'ip=' path.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to isc-dhcp in Ubuntu.
https://bugs.launchpad.net/bugs/1621507

Title:
  initramfs-tools configure_networking() fails to dhcp ipv6 addresses

Status in MAAS:
  Fix Committed
Status in initramfs-tools package in Ubuntu:
  In Progress
Status in isc-dhcp package in Ubuntu:
  In Progress
Status in klibc package in Ubuntu:
  Won't Fix
Status in open-iscsi package in Ubuntu:
  In Progress
Status in initramfs-tools source package in Xenial:
  Triaged
Status in isc-dhcp source package in Xenial:
  In Progress
Status in klibc source package in Xenial:
  Won't Fix
Status in open-iscsi source package in Xenial:
  In Progress
Status in initramfs-tools source package in Yakkety:
  In Progress
Status in isc-dhcp source package in Yakkety:
  In Progress
Status in klibc source package in Yakkety:
  Won't Fix
Status in open-iscsi source package in Yakkety:
  In Progress
Status in klibc package in Debian:
  New

Bug description:
  initramfs' configure_networking function uses ipconfig to configure the 
network.
  ipconfig does not support dhcpv6.  See: 
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=627164

  Related bugs:
    * bug 1229458: grub2 needed changes
    * bug 1621615: network not configured when ipv6 netbooted into cloud-init
    * bug 1635716: Can't bring up a machine on a dual network (ipv4 and ipv6) 

  
  [Impact]

  It is not possible to netboot Ubuntu with a network-based root
  filesystem in an ipv6-only environment.  Anyone wanting to netboot in
  an ipv6-only environment is affected.

  These uploads address this by replacing the one-off klibc dhcp client
  (IPv4-only) with the defacto standard isc-dhcp-client, and thereby
  provide both ipv6 and ipv4 DHCP configuration.

  [Test Case]

  See Bug 1229458.  Configure radvd, dhcpd, and tftpd for your ipv6-only
  netbooting world.  Pass the boot process an ipv6 address to talk to,
  and see it fail to configure the network.

  [Regression Potential]

  1) This increases the uncompressed initramfs size by approximately 500KB, 
since isc-dhcp-client is added, but klibc is still needed for some other 
things, and is therefore present.  On systems with a very small /boot 
partition, this could result in failure to upgrade the initramfs.
  2) In at least some cases, DHCP network configuration shifts from klibc's 
ipconfig to isc-dhcp-client's dhclient.  This should be of minimal risk, as 
isc-dhcp-client is in very very widespread use.  In the event of a regression, 
network boot would fail, but the prior kernel should still be bootable.

To manage notifications about this bug go to:
https://bugs.launchpad.net/maas/+bug/1621507/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to