[Dibbler] Per client prefix delegation ?
thomson at klub.com.pl
Thu Jun 21 21:40:21 CEST 2012
On 09.03.2012 21:02, Tomasz Mrugalski wrote:
> On 06.03.2012 00:06, Mickael Marchand wrote:
>> I am currently testing this branch, it seems to work fine, thanks for
>> writing the implementation.
>> I only occured something odd :
>> 3103s,809628us Server Debug 0 answers buffered. Old reply for transID=d0ef95 not found. Generating new answer.
>> 3103s,809706us Server Debug Found per-client configuration (exception) for client with DUID=00:03:00:01:2c:76:8a:b0:fd:8c
>> 3103s,809736us Server Info Reserved in-pool address 2a01:e0b:1000:255::1 for this client found, assigning.
>> 3103s,809769us Server Info PD option (with IAPREFIX suboptions missing) received.
>> 3103s,809794us Server Debug Found per-client configuration (exception) for client with DUID=00:03:00:01:2c:76:8a:b0:fd:8c
>> 3103s,809830us Server Info Reserved in-pool prefix 2a01:e0b:2fff::/48 for this client found, assigning.
>> 3103s,809884us Server Debug Preference set to 255.
>> 3103s,809914us Server Debug Found per-client configuration (exception) for client with DUID=00:03:00:01:2c:76:8a:b0:fd:8c
>> 3103s,809952us Server Warning Client (DUID=00:03:00:01:2c:76:8a:b0:fd:8c) not found in addrDB, cannot delete address and/or client.
>> 3103s,809976us Server Debug Address usage for class 0 decreased to 18446744073709551615.
>> it seems there is a counter that get decreased below 0 (2^64-1)
>> and I believe this prevents further allocation of PD/Addr
> Amount of available prefixes in each pool is used for decision if a pool
> is suitable or not. Clearly going below 0 is a bug.
I spent considerable amount of time on this new assignment engine and I
believe it is ready for broader testing. It is now merged to master
branch in the GIT repository. Could you please test and check if it working?
> Thanks for testing this branch. I will try to look into the 2^64-1
> problem next week. This weekend and Monday I'm swamped with work on
> DHCPv6 failover draft. There is deadline on Monday midnight for IETF
That problem has been resolved, at least it does not reproduce anymore
in my tests.
BTW I have implemented unittest framework for Dibbler that uses
googletest. There are around 10 tests for per client reservations and
new allocations. If you are interested, you can run them with:
make check <- this will run tests
If you are familiar with C++, you can take a look at
More information about the Dibbler