Issue
DHCP relay does not work with cl-mgmtvrf
when the host and server facing ports are in the data plane.
Environment
- Cumulus Linux 2.5.4 or 2.5.5
cl-mgmtvrf
package versions earlier than0.5
isc-dhcp-relay
package versions earlier than4.2.2.dfsg.1-5+deb70u6+cl2+3
- DHCP relaying from one dataplane interface to another dataplane interface.
Resolution
Software Upgrade
Upgrade to Cumulus Linux 2.5.6 with cl-mgmtvrf=0.5
and isc-dhcp-relay=4.2.2.dfsg.1-5+deb70u6+cl2+3
or later. For more information, see RN-370.
Configuration Work Around
For switches running CL 2.5.4 or CL 2.5.5.
On the switch running dhcprelay
, add an IP rule for the DHCP server address. Replace SERVER_IP
with the SERVERS=
value specified in
/etc/default/isc-dhcp-relay/
:
cumulus@switch$ sudo ip rule add from all to SERVER_IP lookup main
This rule can be applied at boot time, by specifying it in an up
rule on the corresponding interface. The example below applies the SERVER_IP
172.16.0.1
to interface swp52
:
auto swp52
iface swp52
address 172.16.0.2/24
up ip rule add from all to 172.16.0.1 lookup main
Diagnostic Steps
-
Run
tcpdump
from the switch on the host and server facing ports to trace traffic. -
Stop the dhcprelay service.
cumulus@switch:~$ sudo service isc-dhcp-relay stop
-
Run the dhcprelay service in the foreground on the console to watch the output while issuing requests. The output below is an example of a successful session:
cumulus@switch:~$ sudo /usr/sbin/dhcrelay -d -i swp51 -i swp52 172.16.0.1 Internet Systems Consortium DHCP Relay Agent 4.2.2 Copyright 2004-2011 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/swp2/44:38:39:00:25:d9 Sending on LPF/swp2/44:38:39:00:25:d9 Listening on LPF/swp1/44:38:39:00:25:d8 Sending on LPF/swp1/44:38:39:00:25:d8 Sending on Socket/fallback Forwarded BOOTREQUEST for 68:05:ca:2f:7c:b3 to 172.16.0.1 Forwarded BOOTREPLY for 68:05:ca:2f:7c:b3 to 172.16.1.128 Forwarded BOOTREPLY for 68:05:ca:2f:7c:b3 to 172.16.1.128 Forwarded BOOTREQUEST for 68:05:ca:2f:7c:b3 to 172.16.0.1 Forwarded BOOTREPLY for 68:05:ca:2f:7c:b3 to 172.16.1.128 Forwarded BOOTREPLY for 68:05:ca:2f:7c:b3 to 172.16.1.128
Comments