Re: porting dhcpv6 to android
Roy Marples
Tue May 14 05:56:24 2013
Hi Jayce
On 13/05/2013 17:04, jayce lee wrote:
I have recreate the 3rd bug in my ubuntu laptop.
I first disconnected my wifi connection and run dhcpcd wlan0 with the
console shows as follows:
sudo ./dhcpcd wlan0
dhcpcd[17431]: version 5.99.4 starting
dhcpcd[17431]: wlan0: waiting for carrier
Then I connect my wifi and the bug appears
dhcpcd[17431]: wlan0: carrier acquired
dhcpcd[17431]: wlan0: soliciting DHCPv6 address
dhcpcd[17431]: wlan0: rebinding lease of 192.168.0.108
dhcpcd[17431]: wlan0: sendmsg: Cannot assign requested address (Errno
99)
dhcpcd[17431]: wlan0: deleting address 2002:1234:5678:9abc::253/64
dhcpcd[17431]: del_address6 Cannot assign requested address
dhcpcd[17431]: wlan0: acknowledged 192.168.0.108 from 192.168.0.1
dhcpcd[17431]: wlan0: checking for 192.168.0.108
dhcpcd[17431]: wlan0: leased 192.168.0.108 for 86400 seconds
Perhaps it's a common bug not only in android.
So the problem here is that we need to send from the IPv6 link local
address on the interface, but at the point of the error it either
doesn't exist yet or it's in the tentative state which means we can't
use it until DAD completes.
I think we need to handle this specific error gracefully and add code
to if-linux.c and if-bsd.c to listen for IPv6 addresses to become
available and react accordingly.
The other, much easier, solution is to put a delay of say 5 seconds
from carrier going up to IPv6 starting.
I don't have much free time atm so unsure when a solution would be
forthcoming.
Thanks
Roy
Archive administrator: postmaster@marples.name