[Dibbler] DHCPv6-PD Solicit instead of Request when NoBinding failure occurs during IA_PD Renew

Tomek Mrugalski thomson at klub.com.pl
Tue Jun 16 13:21:07 CEST 2020


On 16/06/2020 07:17, Deepak Krishnan wrote:

> On code walkthrough and validation, found that REQUEST msg is not
> being sent since function stops its execution with log "/Unable to
> send REQUEST. There are no backup servers left./".
> Thereafter, SOLICIT message is being sent to the DHCPv6 server in the
> network.
Ah, so it's a bug.
>
> /
> /
> TClntMsgRequest::TClntMsgRequest(TOptList opts, int iface)
>     :TClntMsg(iface, SPtr<TIPv6Addr>(), REQUEST_MSG) {
> ...
>     int backupCount = ClntTransMgr().getAdvertiseLstCount();
>     if (!backupCount)
>     {
>         Log(Error) << "Unable to send REQUEST. There are no backup
> servers left." << LogEnd;
>         setState( opts, STATE_NOTCONFIGURED);
>         this->IsDone = true;
>         return;
>     }
> Is there any tweak which can be put which forcefully does a REQUEST
> msg even though no backup servers present in the network?

You could call it a tweak, but it's really a bug fix or a small new
functionality. I haven't looked at the code in years and forgot the
details long time ago. The whole backup servers list is a bit fragile.
In this case you don't want to use any other server, just continue with
this one.

Am afraid there's most likely no simple couple lines fix here. I would
extend TClntMsgRequest::TClntMsgRequest(TOptList opts, int iface) with
an optional parameter serverDUID. If specified, the code should omit
looking at the backup list, not call delFfirstAdvertise() or
getAdvertiseDUID().

Hopefully this will force Dibbler to send a Request. Whether it will
understand what to do with the Reply that comes as a result, it's an
entirely different problem.

> -----
> I wrote a patch which invokes client-notify script upon expiration
> (alongwith setting of the parameters ) to meet my requirements and its
> working fine.

Cool. Any chance for a Pull Request with this change? It may be useful
for other users.

Cheers,

Tomek

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://klub.com.pl/pipermail/dibbler/attachments/20200616/f49175dc/attachment.htm>


More information about the Dibbler mailing list