dhcpcd-discuss

Not getting IPv6 link local address when link carrier goes up -> down -> up

Floris Bos

Sat Oct 19 11:12:32 2019

Hi,


There seems to be a problem in which a network interface is sometimes not get assigned an IPv6 link local address if the network interface goes quickly up -> down -> up again.


- dhcpcd version 7.0.8 that is shipped with Raspbian

- Raspberry Pi 3B+, to which a USB Ethernet gadget device is attached (Pi zero running gpioexpander image: https://www.raspberrypi.org/blog/gpio-expander/ )


dmesg:


==

[  204.483268] usb 1-1.3: new high-speed USB device number 10 using dwc_otg
[  204.614336] usb 1-1.3: New USB device found, idVendor=f055, idProduct=0001, bcdDevice= 4.04 [  204.614352] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  204.614363] usb 1-1.3: Product: Pi Zero - GPIO expansion board
[  204.614373] usb 1-1.3: Manufacturer: Raspberry Pi
[  204.614382] usb 1-1.3: SerialNumber: 000000006099b31e
[  204.682662] cdc_acm 1-1.3:1.0: ttyACM0: USB ACM device
[  204.684608] usbcore: registered new interface driver cdc_acm
[  204.684623] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters [  204.693959] cdc_ether 1-1.3:1.2 usb0: register 'cdc_ether' at usb-3f980000.usb-1.3, CDC Ethernet Device, fa:00:60:99:b3:1e
[  204.695436] usbcore: registered new interface driver cdc_ether
[  204.817299] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[  204.846568] IPv6: ADDRCONF(NETDEV_CHANGE): usb0: link becomes ready

==


dhcpcd claims that the carrier quickly goes up -> down -> up again. It does assign IPv6 link local the first time link goes up, but fails to do so second time.


==

Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: waiting for carrier
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: carrier acquired
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: IAID 60:99:b3:1e
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: adding address fe80::4d92:7daa:a2d7:b46
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: carrier lost
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: deleting address fe80::4d92:7daa:a2d7:b46
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: carrier acquired
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: IAID 60:99:b3:1e
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: soliciting an IPv6 router
Oct 19 11:48:16 raspberrypi dhcpcd[395]: usb0: soliciting a DHCP lease
Oct 19 11:48:21 raspberrypi dhcpcd[395]: usb0: probing for an IPv4LL address
Oct 19 11:48:26 raspberrypi dhcpcd[395]: usb0: using IPv4LL address 169.254.140.228 Oct 19 11:48:26 raspberrypi dhcpcd[395]: usb0: adding route to 169.254.0.0/16
==


- The problem does not occur on a Pi 4 and a Pi 1 using the same SD card. (interface does go up -> down -> up, but it does get an IPv6 link local address assigned)

And it is not 100% reproducible on a Pi 3+B either, but does happen often on that.

Therefore I believe the problem is timing specific

- Other reports: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=254541



Yours sincerely,


Floris Bos



Follow-Ups:
Re: Not getting IPv6 link local address when link carrier goes up -> down -> upFloris Bos
Re: Not getting IPv6 link local address when link carrier goes up -> down -> upRoy Marples
Archive administrator: postmaster@marples.name