Description

This article explain the meaning of below syslog message.


May 28 09:41:47 MX960 jdhcpd: %USER-3-DH_SVC_DUPLICATE_IPADDR_ERR: Failed to add x.x.x.x as it is already used by 145488094

May 28 09:41:49 MX960 jdhcpd: %USER-3-DH_SVC_DUPLICATE_IPADDR_ERR: Failed to add y.y.y.y as it is already used by 60297353

May 28 09:41:50 MX960 jdhcpd: %USER-3-DH_SVC_DUPLICATE_IPADDR_ERR: Failed to add z.z.z.z as it is already used by 167484130



This is a temporary race condition likely during high rate of dhcp subscriber login/logouts. Authd has already acknowledged the termination request and freed the IP address that was assigned to the session. 

But dhcp hasn't yet processed the termination ack or cleaned up this session. New sessions logging in are being assigned IP addresses that  were recently freed from the same pool range. So dhcp flags this as a duplicate assignment. This further depends on the configuration of the pools and the order in which addresses are being freed.


 

Solution

 Configuring linked-pool-aggregation may impact the behavior but does not prevent it. Currently there is no way to temporarily hold-down a recently freed address to avoid this.

 

If issue occurs, data collection plan.

 

>>enable below trace options 

 

set system auto-configuration traceoptions file autoconfd.trace

set system auto-configuration traceoptions file size 50m

set system auto-configuration traceoptions file files 10

set system auto-configuration traceoptions file world-readable

set system auto-configuration traceoptions flag all

set system processes general-authentication-service traceoptions file authd.trace

set system processes general-authentication-service traceoptions file size 50m

set system processes general-authentication-service traceoptions file files 10

set system processes general-authentication-service traceoptions file world-readable

set system processes general-authentication-service traceoptions flag all

set system processes smg-service traceoptions file bbe-smgd.trace

set system processes smg-service traceoptions file size 50m

set system processes smg-service traceoptions file files 10

set system processes smg-service traceoptions file world-readable

set system processes smg-service traceoptions level all

set system processes smg-service traceoptions flag all

set system processes dhcp-service traceoptions file dhcpd.trace

set system processes dhcp-service traceoptions file size 50m

set system processes dhcp-service traceoptions file files 10

set system processes dhcp-service traceoptions file world-readable

set system processes dhcp-service traceoptions level all

set system processes dhcp-service traceoptions flag all

 

>> Capture the below command output.

 

show network-access aaa subscribers session-id <session id> detail  << session-id reported in syslog. 

show dhcp server binding <IP ADD from syslog> verbose

show subscribers address <IP ADD from syslog > extensive

show network-access aaa statistics address-assignment pool <>

show subscribers subscriber-state extensive terminating 

show subscribers subscriber-state extensive terminated

show shm-ipc statistics

show shmlog entries logname all | save /var/tmp/shmlog.txt

show shmlog statistics logname all | save /var/tmp/shmStats.txt

 

>> Collect the dhcpd, smgd, authd core dump. 

 

 

3. Recovery:-

 

 clear the dhcp binding to release the dhcp IP address. So if client re-login, new dhcp IP is assigned. 

 

clear dhcp server binding <IP Add from syslog>

 

Modification History

2025-09-22 : Article Created