Bug 217310

Summary: Race starting dhcp6c from ifup
Product: Red Hat Enterprise Linux 4 Reporter: Matthew Booth <mbooth>
Component: initscriptsAssignee: Bill Nottingham <notting>
Status: CLOSED WORKSFORME QA Contact: Brock Organ <borgan>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.4CC: rvokal
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-12-09 14:52:38 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Matthew Booth 2006-11-26 22:32:16 UTC
Description of problem:
I have ifcfg-foo as follows:
DEVICE=eth0
ONBOOT=no
BOOTPROTO=dhcp
TYPE=Wireless
HWADDR=xx:xx:xx:xx:xx:xx
USERCTL=no
MODE=Managed
ESSID="xxxxxxxxxxxxxxx"
IPV6INIT=yes
DHCPV6C=yes

eth0 is an ipw2200 wireless card.

Running 'ifup foo', IPv6 configuration fails with no immediate visible output.
/var/log/messages contains the error:
Nov 26 13:30:11 mbooth dhcp6c[32591]: bind(inbound): Cannot assign requested address

Editing the ifup script to pass the options -fD to dhcp6c gives more:
Determining IP information for eth0... done.
Nov/26/2006 21:14:28 extracted an existing DUID from
/var/lib/dhcpv6/dhcp6c_duid: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
Nov/26/2006 21:14:28 link local addr is xxxx::xxx:xxxx:xxxx:xxxx
Nov/26/2006 21:14:28 res addr is xxxx::xxx:xxxx:xxxx:xxxx%eth0/28
Nov/26/2006 21:14:28 bind(inbound): Cannot assign requested address

Editing the ifup script to put 'sleep 5' immediately before the dhcp6c resolves
this problem. The 'res addr' used in the successful case is identical to the
unsuccessful case.

Version-Release number of selected component (if applicable):
dhcpv6-0.10-14_EL4

Comment 1 David Cantrell 2006-11-27 19:28:16 UTC
If a sleep 5 fixes it in the ifup script, I'm ok with that.  The dhcpv6 code is
a mess anyway.  We run ifup-ipv6 before dhcp6c runs and the state changes
involved there are confusing dhcp6c.

If we don't add a sleep 5 to the init script, the script should more gracefully
handle this failure.  I dunno.  Seems like the scripts are the better place to
do this.  Reassigning.

Comment 2 Bill Nottingham 2008-12-08 21:53:46 UTC
Egads, apologies for the delay. Does this persist on later releases such as 5.2/5.3?

Comment 3 Matthew Booth 2008-12-08 23:08:13 UTC
Unfortunately I can't test this any more. Feel free to close it.

Comment 4 Bill Nottingham 2008-12-09 14:52:38 UTC
OK, closing. Sorry about that. (We haven't heard other reports of this.)