Bug 466306 - dhcp6c is not executed if IPv4 is not configured
Summary: dhcp6c is not executed if IPv4 is not configured
Keywords:
Status: CLOSED DUPLICATE of bug 486507
Alias: None
Product: Fedora
Classification: Fedora
Component: initscripts
Version: 10
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Bill Nottingham
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-10-09 17:07 UTC by Stas
Modified: 2014-03-17 03:16 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-02-20 14:44:43 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Stas 2008-10-09 17:07:08 UTC
Description of problem:

dhcp6c is executed in the very end of ifup-eth. Control doesn't reach that point if IPv4 is not configured, because of:

if [ "${BOOTPROTO}" = "bootp" -o "${BOOTPROTO}" = "dhcp" ]; then
    DYNCONFIG=true
fi
............
if [ -n "${DYNCONFIG}" -a -x /sbin/dhclient ]; then
    .............
else
    if [ -z "${IPADDR}" ]; then
         ...............
         /etc/sysconfig/network-scripts/ifup-ipv6 ${CONFIG}
         exec /etc/sysconfig/network-scripts/ifup-post ${CONFIG} ${2}
    fi

Version-Release number of selected component (if applicable):
initscripts-8.76.2

How reproducible:

always

Steps to Reproduce:
1. set the following in /etc/sysconfig/network-scripts/ifcfg-eth0
DHCPV6C=yes
IPV6INIT=yes
2. make sure that IPV4 configuration is turned off in ifcfg-eth0 (BOOTPROTO, IPADDR are not set)
3. ifup eth0
4. ps axlww | grep dhc
  
Actual results:

dhcp6c is not running

Expected results:

dhcp6c should be running

Additional info:

Comment 1 Bill Nottingham 2008-10-09 17:16:15 UTC
BOOTPROTO isn't supposed to be a IPv4 configuration - it's generic.

Comment 2 Stas 2008-10-09 18:16:44 UTC
According to ifup-eth script, setting BOOTPROTO enables running dhclient, so having BOOTPROTO off is the only way to avoid IPv4 configured on host, if DHCP server is configured on network.

Comment 3 Stas 2008-10-09 18:31:14 UTC
Also sysconfig.txt says that there's separate option to enable DHCP6:
   IPv6-only option to enable DHCPv6 client: 
      DHCPV6C=yes|no
      This will enable the DHCPv6 client, dhcp6c, to be run for the interface.      See man dhcp6c(8) and dhcp6c.conf(5).

Comment 4 Stas 2008-10-14 19:16:02 UTC
To clarify: it is not clear what settings you think should be set for a system which is configured via DHCPv6 with IPv4 disabled -- could you please give an example?

Comment 5 Bill Nottingham 2008-10-14 20:36:43 UTC
Your point is correct, but BOOTPROTO was *supposed* to be generic, alas, the IPv6 configuration parameters weren't well thought out.

Comment 6 Bug Zapper 2008-11-26 03:42:47 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle.
Changing version to '10'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 7 Michel Zehnder 2008-11-30 18:10:21 UTC
I've got the same problem.

Having NO IPv4 address, and DHCP6C for IPv6 does not work.

DHCP6C initialization is missing in /etc/sysconfig/network-scripts/ifup-eth after:

-----
Line 225: /etc/sysconfig/network-scripts/ifup-ipv6 ${CONFIG}
-----

Needs DHCP Code added there:

-----
if [[ "${DHCPV6C}"  = [Yy1]* ]] && [ -x /sbin/dhcp6c ]; then
    /sbin/dhcp6c ${DEVICE};
    dhcp6_pid=(`/bin/ps -eo 'pid,args' | /bin/grep "dhcp6c ${DEVICE}" | egrep -v grep`);
    echo ${dhcp6_pid[0]} > /var/run/dhcp6c_${DEVICE}.pid
fi
-----


It then works as expected.

Comment 8 Bill Nottingham 2009-02-20 14:44:43 UTC

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


Note You need to log in before you can comment on or make changes to this bug.