Closed Devinchai closed 4 years ago
I fail to understand the issue; do you expect the address assigned to PC A to be assigned to PC C ? And if yes why do you expect this ?
@dedeckeh PC A 's address not be released all the time , so PC C not get this address(only configure two address),the reason it wasn't released is because a->clid_len>0 .
Are you talking about static leases ? If not I fail to understand how you can create a pool with only two IPv6 addresses ...
@dedeckeh , I modified function "assign_na", limit it assign only two address pool .
@dedeckeh , I do not understand where is dhcp's address released?
@dedeckeh , PC A get ipv6 address by dhcpv6 ,but I pull the PC A cable,the address not be released all the time in iface->ia_assignments, when the PC A address is released ?
I add log in function "valid_until_cb":
add log patch:
output and print log:
Thanks for bringing this up; fixed in https://git.openwrt.org/?p=project/odhcpd.git;a=commit;h=94a1c942315f6b3c2870cf744114bb133f209799
Dear @dedeckeh I set 2 dhcpv6 address pool; assign to PC A and PC B. but when I pull out PC A,and wait for it valid time expire, then insert another PC C, it not assign dhcpv6 address .
I guess function "valid_until_cb" in dhcpv6-ia.c, whether change this (a->length == 128 && a->clid_len == 0)) to (a->length == 128 && a->clid_len > 0))