Report information
The Basics
Id:
44576
Status:
resolved
Estimated:
24 hours (1,440 minutes)
Worked:
6 hours (360 minutes)
Users:
tmark: 6 hours (360 minutes)
Priority:
Low/Low
Queue:

BugTracker
Version Fixed:
4.4.0 4.3.7
Version Found:
4.3.4
Versions Affected:
(no value)
Versions Planned:
4.4.0 4.3.7
Priority:
P2 Normal
Severity:
S2 Normal
CVSS Score:
(no value)
CVE ID:
(no value)
Component:
(no value)
Area:
bug

Dates
Created:Wed, 01 Feb 2017 06:07:30 -0500
Updated:Thu, 14 Dec 2017 13:36:09 -0500
Closed:Thu, 07 Dec 2017 07:14:23 -0500



This bug tracker is no longer active.

Please go to our Gitlab to submit issues (both feature requests and bug reports) for active projects maintained by Internet Systems Consortium (ISC).

Due to security and confidentiality requirements, full access is limited to the primary maintainers.

Subject: An existing IA is lost when its IAID+DUID roams to a new network
The server tracks IAs by IAID+DUID, which means if that tuple moves to a new network, an existing IA is simply dropped without proper cleanup or logging and the behavior prohibits the tuple from holding IAs in more than one network. This issue was initially reported by Bluecat, #10833, and in for their particular customer's situation was mitigated by implementing an EUI-64 based allocation scheme under #43927. That ticket however did not address the original issue for normal dynamic allocation. At this point the following courses of action are available: 1. Do nothing, as Kea supports the same client holding IAs in more than one network. 2. Detect when an IAID-DUID has roamed to a new subnet, and properly release the IA on the old subnet. Currently we just drop them on the floor. 3. Support IAs on mulitple subnets for an IAID-DUID. IAs on a given subnet expire naturally. 4. Support both 2 & 3, selectable via global configuration parameter Any changes made would apply only to 4.4.0
On Thu Nov 30 20:11:31 2017, tmark wrote: > Ticket is ready for review. => reading it: - I don't like "int i" when i is used as an index in an array but there are a lot of examples of this in the code so I am too late to make a better style to be adopted: I give up. - same about "*prefix_buf" vs "prefix_buf[0]"... So the code seems OK.