<div dir="ltr">Thanks Francis for your response. I have also checked the code and found the following code logic:<div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">File: alloc_engine.cc</span><br style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">Function:</span><br style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">void</span><br style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">AllocEngine::allocateReservedLeases6(ClientContext6& ctx,</span><br style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"> Lease6Collection& existing_leases)</span><br style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><br style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">If there is existing lease for the client then the client lease time is extended</span><br style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">Else we create a new entry of the lease for the client. It is during new entry creation lease6_select callback gets called.</span><br></div><div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><br></span></div><div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">Usually in our testing we were doing reboot of the host causing the lease release and then lease select. But it seems that there could be few scenarios where the lease allocation can happen without the previous release. Few scenarios which I can think of is hard reboot of the host or plug out the cable of the host causing no lease release. Hence, I have decided to move my logic from lease6_select callback to ptk6_send callback as I have seen pkt6_send callback getting called consistently. Then I am planning to extract the host IP address allocated to client from Option 3 suboption 5 from the response.</span></div><div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><br></span></div><div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">Thanks for your inputs.</span></div><div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)"><br></span></div><div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">Regards,</span></div><div><span style="color:rgb(51,51,51);font-family:Arial,sans-serif;font-size:14px;background-color:rgb(245,245,245)">Mayank</span></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Sep 27, 2019 at 12:03 PM Francis Dupont <<a href="mailto:fdupont@isc.org">fdupont@isc.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Explaination: the DHCP6_LEASE_ALLOC log message is from the server code,<br>
lease6_select callout point is in the allocation engine library.<br>
The server calls allocateLeases6 in the library, this method has at least<br>
4 main cases so I am not very surprised that not all branches call<br>
the callout (it is called only by 2 internal methods).<br>
We'll revisit the definition of the callout point to see if it is a bug<br>
and if it is we'll fix it.<br>
<br>
Thanks<br>
<br>
Francis Dupont <<a href="mailto:fdupont@isc.org" target="_blank">fdupont@isc.org</a>><br>
</blockquote></div>