OpenWrt/LEDE Project

  • Status Closed
  • Percent Complete
  • Task Type Bug Report
  • Category Base system
  • Assigned To No-one
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version Trunk
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by Mark Smith - 26.11.2018
Last edited by Hans Dedecker - 20.04.2019

FS#1971 - IPv6 ULA prefix announced with Infinite lifetimes, rather than RFC4861 defaults

Supply the following if possible:
- Device problem occurs on


- Software versions of OpenWrt/LEDE release, packages, etc.

* OpenWrt 18.06.1 r7258-5eb055306f / LuCI openwrt-18.06 branch (git-18.228.31946-f64b152)

- Steps to reproduce


1. IPv6 enabled by default, OpenWRT automatically generates a unique ULA prefix per RFC4193.

2. ULA prefix is announced with Infinite Preferred and Valid Lifetimes, rather than the RFC4861 defaults:

  1. AdvPreferredLifetime: Default: 604800 seconds (7 days)
  1. AdvValidLifetime: Default: 2592000 seconds (30 days)

e.g., using the ‘rdisc6’ utility to display RAs:

[root@opy mark]# rdisc6 wlp3s0
Soliciting ff02::2 (ff02::2) on wlp3s0...
Prefix : fdec:91f6:8c3a::/64

On-link                 :          Yes
Autonomous address conf.:          Yes
Valid time              :     infinite (0xffffffff)
Pref. time              :     infinite (0xffffffff)


Infinite lifetimes mean these ULA addresses never expire on a host and will always be considered valid source and destination addresses during RFC6724 source and destination address selection.

One consequence is that a mobile device that has a high uptime (e.g. a smartphone), moves between a number of IPv6 networks, and uses IPv6 privacy addresses, could end up with a lot of unusable ULA addresses on its network interface. They may accumulate continuously until the device is rebooted.

Closed by  Hans Dedecker
20.04.2019 20:02
Reason for closing:  Fixed
23.04.2019 : A request to re-open the task has been made. Reason for request: Bug isn't that the ULA lifetimes can be changed. Bug is that the default lifetimes are infinite. Any addresses that are learned, currently GUA or ULA type addresses, via DHCPv6 or SLAAC, should eventually timeout if they aren't refreshed via the mechanism they were learned via.
Project Manager
Hans Dedecker commented on 20.04.2019 20:02

This behavior can be changed by setting ra_useleasetime to 1; in this case odhcpd will take the smallest value of either the leasetime or the valid lifetime of an IPv6 address

Mark Smith commented on 23.04.2019 05:02

(adding to the re-open request text)

Looking up what "ra_useleasetime" does (, I don't really understand what the lease time being referred to is.

I'm guessing it might be referring to the IPv6 Global Unicast Address (GUA) delegated prefix lease time learned via DHCPv6-PD.

This lease time isn't relevant to the Unique Local Address (ULA) prefix, as the that is a local network only prefix who's existence and lifetimes are independent of a GUA delegated prefix, and independent of whether a GUA prefix has been supplied or not by the ISP.


Available keyboard shortcuts


Task Details

Task Editing