Bug 1363831

Summary: No nameserver in /etc/resolv.conf after iSCSI installation with static IP address
Product: Red Hat Enterprise Linux 7 Reporter: Jan Stodola <jstodola>
Component: anacondaAssignee: Anaconda Maintenance Team <anaconda-maint-list>
Status: CLOSED WONTFIX QA Contact: Release Test Team <release-test-team-automation>
Severity: high Docs Contact: Milan Navratil <mnavrati>
Priority: high    
Version: 7.3CC: jstodola, mbanas
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Known Issue
Doc Text:
No name server is included in `/etc/resolv.conf` after an iSCSI installation with a static IP address When connecting to the root file system on an iSCSI target from an interface with a static IP address, the name server is not configured on the installed system. To work around this problem, add the "nameserver=<IP>" kernel option to the boot loader configuration of the installed system.
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-12-15 07:44:02 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:
Bug Depends On:    
Bug Blocks: 1256306    

Description Jan Stodola 2016-08-03 16:47:08 UTC
Description of problem:
After kickstart installation with root file system on iSCSI target and using static IP configuration during the installation, /etc/resolv.conf on installed system doesn't contain any nameserver= option:

[root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
[root@localhost ~]#

Nameserver was set during the installation using the nameserver= boot option.

The problem is that /etc/sysconfig/network-scripts/ifcfg-eth0 is replaced during boot by ifcfg-eth0 generated by dracut initrd. It's caused by rhel-import-state.service and it's considered as an expected behavior (see bug 1163829).
Since nameserver= is not present on the kernel command line when booting installed system, dracut's ifcfg-eth0 doesn't contain DNSX=<IP> option, which results in no nameserver set on running system.

There is a workaround to manually add "nameserver=<IP>" on the kernel command line when booting the system.
A possible solution is to let anaconda add the nameserver= boot option(s) if static IP configuration is used by dracut to mount a network storage device.

Version-Release number of selected component (if applicable):
RHEL-7.2
RHEL-7.3-Alpha (anaconda-21.48.22.81-1.el7)

How reproducible:
always

Steps to Reproduce:
1. prepare an iSCSI target
2. run kickstart installation with rootfs on iSCSI, use static IP configuration on the kernel command line

kickstart snippet:

iscsiname iqn-2012-12.com.redhat:76765
iscsi --ipaddr=192.168.122.27 --target=iqn.2009-02.com.example:for.all
bootloader --location=mbr
zerombr
clearpart --all --initlabel
part /boot --asprimary --size=500
part swap --fstype=swap --recommended
part / --grow --size=2048 --ondisk=/dev/disk/by-id/scsi-1IET_00010001

3. check /etc/resolv.conf on installed system

Actual results:
no nameserver in /etc/resolv.conf

Expected results:
nameserver(s) present in /etc/resolv.conf

Comment 5 RHEL Program Management 2020-12-15 07:44:02 UTC
After evaluating this issue, there are no plans to address it further or fix it in an upcoming release.  Therefore, it is being closed.  If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened.