DHCP-Relay multiplies DHCP requests sent by another DHCP relay
book
Article ID: 167946
calendar_today
Updated On:
Products
XOS
Issue/Introduction
When a DHCP relay receives a request forwarded by another DHCP relay, each request may be duplicated up to 255 times towards the DHCP server.The link to a DHCP server is saturated by DHCP traffic. The customer sees duplicated requests/responses on the DHCP server.
Cause
This is a known issue in the DHCP relay and highly visible on the C-Series due to the default DHCP max-hop-count value of 255 (on X-Series the default value is 10). The relay loops up to the value of max-hop-count during the packet forwarding.
Resolution
N/A
Workaround
For C-Series:
Run dhcrelay with option '-c 2' to limit the number of DHCP hops. To add the option, edit the file /etc/init.d/dhcrelay and restart the daemon with "service dhcrelay restart". The daemon will drop packets that have higher relay-hop count than the specified value and packets won't be duplicated.
For X-Series:
For XOS versions 9.6.x and above:
Edit /etc/sysconfig/dhcrelay on each involved VAP and change the line:
DHCRELAYARGS=""
to:
DHCRELAYARGS="-c N" where N is the number of expected DHCP relay hops, e.g. 2
For XOS 9.5.x and below:
1) Edit /etc/sysconfig/dhcrelay on each involved VAP and add the line
DHCRELAYARGS="-c N" where N is the number of expected DHCP relay hops, e.g. 2
2) Edit /etc/init.d/dhcrelay on each involved VAP to include the keyword $DHCRELAYARGS in the following line:
Original:
daemon $dhcrelay $([ -n "$INTERFACES" ] && for int in $INTERFACES ; do echo -n " -i $int" ; done) $DHCPSERVERS 2>/dev/null
New:
daemon $dhcrelay $DHCRELAYARGS $([ -n "$INTERFACES" ] && for int in $INTERFACES ; do echo -n " -i $int" ; done) $DHCPSERVERS 2>/dev/null