[Bug 1937110] Re: dhcp option 121 & 249
Matt Heller
1937110 at bugs.launchpad.net
Fri May 20 13:45:47 UTC 2022
I'll also add that installers for past LTS Ubuntu releases do work in
our environment.
I opened up the Focal initrd.gz we use for PXE based installs (I think
it was from the mini.iso which I guess is now classified as a "Legacy
Image", http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-
amd64/current/legacy-images/netboot/mini.iso). What I found is that it
also is missing /etc/dhcp/dhclient-exit-hooks.d/rfc3442-classless-routes
HOWEVER it has an older /sbin/dhclient-script that does NOT have the
code that ignores "routers" option values when the RFC 3442 option 121
is present in the response. As a result it does configure the default
route based on the DHCP "routers" value but ignores the RFC 3442 info.
In our environment this means the routing is sub-optimal but networking
still largely functions and thus Focal installation "works".
The original poster reports trouble with Focal installer I don't know if
the difference is because they use a different Focal .iso or because
perhaps they strongly require the RFC 3442 routes for networking to
function in their environment.
My recollection regarding the changes in the newer dhclient-script is
that it that ignoring the "routers" option if the client supports and
uses the RFC 3442 routes option is the behavior specified in RFC 3442,
that the behavior of the old version to sort-of merge the "routers"
option and the RFC 3442 option 121 together was non-compliant. Though as
it turns out if the "rfc3442-classless-routes" hook file is accidentally
missing then that makes the behavior of the newer, more correct
dhclient-script version worse.
--Matt
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to busybox in Ubuntu.
https://bugs.launchpad.net/bugs/1937110
Title:
dhcp option 121 & 249
Status in subiquity:
New
Status in busybox package in Ubuntu:
Confirmed
Bug description:
Hello,
I'm running into issues with subiquity on a cloud provider. The cloud
provider is using an on-link L3 gateway.
His DHCP response looks like this:
OPTION: 53 ( 1) DHCP message type 5 (DHCPACK)
OPTION: 54 ( 4) Server identifier 172.31.1.1
OPTION: 51 ( 4) IP address leasetime 86400 (24h)
OPTION: 1 ( 4) Subnet mask 255.255.255.255
OPTION: 3 ( 4) Routers 172.31.1.1
OPTION: 6 ( 12) DNS server ....
OPTION: 121 ( 14) Classless Static Route 20ac1f0101000000 .......
0000ac1f0101 ......
OPTION: 249 ( 14) MSFT - Classless route 20ac1f0101000000 .......
0000ac1f0101 ......
Im booting the subiquity process with an patched ipxe (https://github.com/ipxe/ipxe/pull/104) like this:
#!ipxe
kernel .../vmlinuz initrd=initrd root=/dev/ram0 ramdisk_size=1500000 ip=dhcp url=https://cdimage.ubuntu.com/ubuntu-server/focal/daily-live/current/focal-live-server-amd64.iso autoinstall ds=nocloud-net;s=.../...-ad-78/ cloud-config-url=/dev/null
initrd .../initrd
boot
initrd/vmlinuz is extracted right out of focal-live-server-amd64.iso
Sadly subiquity is stuck with a broken network (because of missing
dhcp option 121/249 support). It happens when its running the /init
from the kernel right after kernel is booted, i guess even before the
subiquity is started(?).
After further debugging, it looks like the provided kernel 5.4.80 #90
Ubuntu, is using busybox 1.30.1-4ubuntu~6.3 which includes isc-
dhclient-4.4.1 which is lacking the given options.
Would be awesome if this could be fixed.. maybe just a simple busybox compile option?
To manage notifications about this bug go to:
https://bugs.launchpad.net/subiquity/+bug/1937110/+subscriptions
More information about the foundations-bugs
mailing list