[kea-dev] perfdhcp bugfix

Angelo Failla pallotron at fb.com
Fri Apr 8 11:38:00 UTC 2016

On 4/8/16, 12:31 PM, "Marcin Siodelski" <marcin at isc.org> wrote:

>Thanks for the pull request.
>I left a comment in your pull request
>From my reading of RFC3315, the transaction id should not be copied
>between Advertise and Request, but generated for each message sent.

In theory (from what I can see in pcap files I take regularly in our prod env) the transaction ID should be generated by the client when sending DISCOVER, and should be used for the duration of the 4-way handshake. Which perfdhcp is not doing (it generates a different ID when sending REQUEST) according to my tests. I now that in theory it’s against RFCs to use the TXID provided by the server. But this is a test tool, I guess you can make an exception, I don’t know perfdhcp code well enough… I think generateTransid() should be only called once per session and used for the duration of the session.

>Do you have any issues in your testbed for DHCPv6, related to
>transaction id being regenerated for each message sent? Or you have
>included the change for DHCPv6 for symmetry with DHCPv4?

No issues in prod per se, we are writing a DHCP relayer/loadbalancer internally in Go to solve some issues we have, we balance things hashing on GIADDR + TXID, and we were using perfdhcp to test the solution when I found out about the current behavior.

And yes I included the changes for DHCPv6 for symmetry.

More information about the kea-dev mailing list