** Description changed:

- After fixing IPv6 address assignment (#1469346), IPv6 works fine until
- sleep. On wake up ubuntu fails to renew its IPv6 lease:
+ Network Manager summarily kills the IPv6 dhclient process when the
+ DHCPv6 lease contained in the dhclient6-${UUID}.lease file is out-of
+ date, leaving the IPv6 interface without a stateful IPv6 address, or, if
+ the "require IPv6 address on this interface" option is enabled, causes
+ NM to cycle continuously deactivating and reactivating the interface
+ (including the IPv4 addresses).
  
- Jan 13 10:47:47 ubuntu dhclient: PRC: Renewing lease on wlp3s0.
- Jan 13 10:47:47 ubuntu dhclient: PRC: Rebinding lease on wlp3s0.
- Jan 13 10:47:47 ubuntu dhclient: XMT: Rebind on wlp3s0, interval 9890ms.
- Jan 13 10:47:47 ubuntu NetworkManager[796]: <info>  (wlp3s0): DHCPv6 state 
changed bound -> unknown
- Jan 13 10:47:47 ubuntu dhclient: PRC: Address 2a02:xxxx:xxxx:xxxx::b44 
depreferred.
- Jan 13 10:47:47 ubuntu NetworkManager[796]: <info>  (wlp3s0): DHCPv6 state 
changed unknown -> expire
- Jan 13 10:47:47 ubuntu NetworkManager[796]: <info>  (wlp3s0): canceled DHCP 
transaction, DHCP client pid 1170
- Jan 13 10:47:47 ubuntu NetworkManager[796]: <info>  (wlp3s0): DHCPv6 state 
changed expire -> done
+ This is effectively a Denial Of Service. It can be trivially induced if,
+ for example, the dhclient6-$(UUID}.lease file contains a lease that was
+ issued before the user went away on vacation or the PC wasn't connected
+ to the same network for a few days (depending on the lease
+ renew/rebind/expiry times). Calculation on the old lease of
  
- I'm not sure that it's solely NetworkManager issue (dhclient could also
- be affected).
+ start + preferred_lifetime < NOW
+ 
+ triggers dhclient to 'DEPREFER6' the lease (withdraw the address record)
+ and ask the DHCPv6 server for a new lease, but Network Manager will kill
+ the dhclient because it only sees an 'EXPIRE6' state change.
+ 
+ In summary, when the DHCPv6 state transitions from "bound" to "unknown"
+ then "expire" to "done" Network Manager kills the 'dhclient' process
+ before it has chance to request and bind a fresh lease, If 'dhclient' is
+ run manually with the same command-line options and allowed to continue
+ running it correctly gains a new lease.
+ 
+ Network Manager doesn't know how to handle "DEPREF6", which is sent from
+ isc-dhcp dhclient to the helper script (set by "-sf" option).
+ 
+ So it seems that to correctly solve this issue Network Manager must be
+ taught how to handle DEPREF6.
+ 
+ /var/log/syslog will show a message from dhclient of the form:
+ 
+ dhclient: PRC: Address 2a02:8011:2007::2 depreferred.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1533631

Title:
  Failed to renew DHCPv6 lease after suspend

To manage notifications about this bug go to:
https://bugs.launchpad.net/network-manager/+bug/1533631/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to