Description

Relay agent in Junos evo platform does not correctly perform DHCP relay for clients.

A client gets an address when it broadcasts for a request, from T1 interval onwards unicast responses are filtered, and this results in the agent entering a renewal state.

Ultimately T2 expires, the client gets desperate and starts broadcasting again, and these do successfully get delivered.


This configuration works successfully on junos platforms.

Symptoms

I have set lease time of 600s in lab (T1 at 50% is 300s & T2 at 87.5% is 75s).

 

labroot@jtac-acx7024-r2010> show dhcp relay binding routing-instance voip_inside

IP address Session Id Hardware address Expires State Interface

10.80.32.1 11 00:12:01:00:00:01 300 BOUND et-0/0/5.12

 

labroot@jtac-acx7024-r2010> show dhcp relay binding routing-instance voip_inside

IP address Session Id Hardware address Expires State Interface

10.80.32.1 11 00:12:01:00:00:01 299 RENEWING et-0/0/5.12

 

labroot@jtac-acx7024-r2010> show dhcp relay binding routing-instance voip_inside

IP address Session Id Hardware address Expires State Interface

10.80.32.1 11 00:12:01:00:00:01 151 RENEWING et-0/0/5.12

 

labroot@jtac-acx7024-r2010> show dhcp relay binding routing-instance voip_inside

IP address Session Id Hardware address Expires State Interface

10.80.32.1 11 00:12:01:00:00:01 76 RENEWING et-0/0/5.12

 

labroot@jtac-acx7024-r2010> show dhcp relay binding routing-instance voip_inside

IP address Session Id Hardware address Expires State Interface

10.80.32.1 11 00:12:01:00:00:01 599 BOUND et-0/0/5.12

Solution

This issue has been resolved via internal PR1829533.


Reason:

When a renew is received on a tunnelled interface, it doesn't have L2 IFL index.

In such cases jdhcpd flags it as mismatch, and the renew is NAKed.

 

Fix:

Don't consider the L2 interface, if it is not populated by PFE.


Resolved In:

23.4R2-S4-J24-EVO evo:24.4R1-EVO evo:25.1R1-EVO

Modification History

2025-08-01 : Article Created