Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 2021072

Summary: kickstart over dhcp: filename dhcp option not taken into account by NetworkManager
Product: Red Hat Enterprise Linux 8 Reporter: nico.martin
Component: NetworkManagerAssignee: NetworkManager Development Team <nm-team>
Status: CLOSED DUPLICATE QA Contact: Desktop QE <desktop-qa-list>
Severity: high Docs Contact:
Priority: unspecified    
Version: 8.4CC: bgalvani, lrintel, rkhan, sfaye, sukulkar, till
Target Milestone: rcKeywords: Triaged
Target Release: ---Flags: pm-rhel: mirror+
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-11-15 17:27:34 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description nico.martin 2021-11-08 09:35:15 UTC
Description of problem:
using inst.ks=nfs:auto ip=ens3:dhcp to boot RHEL8.4 installation, the filename option set in the dhcp server configuration is ignored by NetworkManager and not propagated to dracut/anaconda.
Kickstart is instead searched in /kickstart on the dhcpd server.
This breaks a behavior that has been present in all previous RHEL releases.

The documentation in:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/performing_an_advanced_rhel_installation/kickstart-and-advanced-boot-options_installing-rhel-as-an-experienced-user

states:
In the previous example, next-server is the DHCP next-server option or the IP address of the DHCP server itself, and filename is the DHCP filename option, or /kickstart/.

But setting inst.ks does not make the use of the filename dhcp option to work.
The behavior of the software doesn't match the documentation.

Further observations:
anaconda/dracut/fetch-kickstart-net.sh is looking for /tmp/net.$netif.lease if inst.ks=nfs:auto is specified.
But in /tmp, there is only dhclient.ens3.dhcpopts and net.ens3.dhcpopts

To sum up:
The behavior of the installer does not match the documentation
inst.ks=nfs:auto is not present in the official documentation, but the code is meant to work that way
NetworkManager ignores the filename dhcp option and the option is not propagated to dracut/anaconda
anconda/dracut/fetch-kickstart-net.sh is looking for possibly the wrong file


Version-Release number of selected component (if applicable):
NetworkManager-1.30.0-10.el8
anaconda-33.16.4.15-1.el8

How reproducible:
Systematic

Steps to Reproduce:
1.Set up a dhcp server to serve kickstarts using the filename option
example:
 host ehvsrv700sv { hardware ethernet 52:54:00:FD:D1:8E; fixed-address 10.101.9.181; filename "/data/built/test/kickstart/"; }

2.boot RHEL8 with inst.ks=nfs:auto ip=ensX:dhcp or inst.ks ip=ensX:dhcp (following documentation)
3.

Actual results:
Installation looks for kickstart at /kickstart instead of using the filename dhcp option.

Expected results:
RHEL8 installation fetches kickstart at the location present in the filename dhcp option.

Additional info:

Comment 1 nico.martin 2021-11-08 09:37:35 UTC
this also impacts anaconda and documentation, but only one component can be impacted.

Comment 3 Beniamino Galvani 2022-11-15 17:27:34 UTC
This requires changes in different components:

 - NetworkManager, to save the option in the state file in /run. This was added in RHEL 8.5, NetworkManager-1.32.6-1.el8, see bug 1979387.

 - dracut, to copy the option from the state file to /tmp/net.$netif.dhcpopts. This is tracked in bug 1991449.

 - anaconda to actually use the information. See bug 1991516.

Since the NM part is already done in bug 1979387, I'm going to close this bz as duplicate.

*** This bug has been marked as a duplicate of bug 1979387 ***