dhcprelay duplicates unicat REQUEST packages

I enabled dhcprelay on a CumulusVX instance and it appears I ran into this bug


I know you haven't written the relay agent but it would be great i you can look into it. It gives a lot of error messages on the DHCP server.

5 replies

Userlevel 3
Hi Eelco,
Can you provide the dhcrelay configuration? Simply executing this command will be sufficient:
ps -ef | grep dhcrelay 
Hi Jason

/usr/sbin/dhcrelay --nl -d -i vlan100 -i vlan200 -a --use-pif-circuit-id
see below the wireshark capture on the DHCP server (
packet 17 is the unicast request packet 18 and 19 are created by the cumulus switch doing the forward. You can see they are the same request based on the Transaction ID

18 has a relay agent ip of (the incoming interface ip address)
19 has a relay agent ip of (the outgoing interface ip address)
20 is the normal ack to the request in 17
21 is the ack to the request in 18
packet 19 is never acked because the server does not have any ranges for

if you want I can give you the complete wireshark capture but it should be very simple to reproduce.


dit you find time to look into this. Else I will just make a formal request when I can reproduce it on physical boxes

Userlevel 3
Hi Eelco,

I looked at a physical switch running 3.5.0, and I do not see duplicate responses. What is vlan100 and vlan200? Make sure the interface used for the giaddr is also specified in the interfaces directive (-i). If one of the vlan SVI's is used for giaddr, you may need to specify --giaddr-src option.
Hi Jason,

sorry for the late reply. vlan 100 is the interace on which the DHCP request are received. Vlan 200 is the interface towards the DHCP server. I haven't seen the issue when using unnumberd interfaces so I'll leave it for now