Description

Our customer is currently running into an issue when configuring DHCP relay inside a VRF. It does not seem to be able to relay the traffic as required.

 

They have the following bridge domain and VXLAN setup configured

 

set routing-instances fabric-dc2 protocols evpn extended-vni-list 352

set routing-instances fabric-dc2 bridge-domains bd_352 domain-type bridge

set routing-instances fabric-dc2 bridge-domains bd_352 vlan-id 352

set routing-instances fabric-dc2 bridge-domains bd_352 routing-interface irb.352

set routing-instances fabric-dc2 bridge-domains bd_352 bridge-options mac-table-size 250

set routing-instances fabric-dc2 bridge-domains bd_352 bridge-options interface-mac-limit 250

set routing-instances fabric-dc2 bridge-domains bd_352 vxlan vni 352

 

This bridge domain has an IRB attached which is located in a seperate VRF (VRF ic-imm-dc2)

set routing-instances test instance-type vrf

set routing-instances test routing-options static route 0.0.0.0/0 next-hop 10.101.0.5

set routing-instances test orwarding-options dhcp-relay forward-only

set routing-instances test forwarding-options dhcp-relay server-group server-test <Server IP address>

set routing-instances test forwarding-options dhcp-relay route-suppression access-internal

set routing-instances test forwarding-options dhcp-relay group test-dc2 active-server-group server-test

set routing-instances test forwarding-options dhcp-relay group test-dc2 interface irb.xxx

set routing-instances test interface irb.xxx

set routing-instances test interface irb.xxx

set routing-instances test route-distinguisher xxxxx:x

set routing-instances test vrf-target target:xxxx:x

set routing-instances test vrf-table-label

 

 

set interfaces irb unit XXX family inet mtu 1500

set interfaces irb unit XXX family inet policer input 1g

set interfaces irb unit XXX family inet policer output 1g

set interfaces irb unit XXX family inet address <IP address/XX>

set interfaces irb unit XXX mac xx:xx:xx:xx:xx:xx

 

 

The irb unit XXX is used for connectivity with systems located behind a firewall, this includes the target DHCP server.

 

Customer was not able able to get DHCP relay working. They see DHCP requests arriving on the IRB interface itself but all the request are being dropped as Invalid Server address.

 

 

 

Symptoms

user@Router> show dhcp relay statistics routing-instance test

Packets dropped:

Total 62
Invalid Server address 61
No binding found 1

 

Messages received:

BOOTREQUEST 851

DHCPDECLINE 0

DHCPDISCOVER 797

DHCPINFORM 0

DHCPRELEASE 0

DHCPREQUEST 48

DHCPLEASEACTIVE 0

DHCPLEASEUNASSIGNED 0

DHCPLEASEUNKNOWN 0

DHCPLEASEQUERYDONE 0

DHCPACTIVELEASEQUERY 0

 

Messages sent:

BOOTREPLY 4

DHCPOFFER 0

DHCPACK 4

DHCPNAK 0

DHCPFORCERENEW 0

DHCPLEASEQUERY 0

DHCPBULKLEASEQUERY 0

DHCPLEASEACTIVE 0

DHCPLEASEUNASSIGNED 0

DHCPLEASEUNKNOWN 0

DHCPLEASEQUERYDONE 0

DHCPACTIVELEASEQUERY 0

Solution

For Anycast IRB, use a unique loopback in each routing instance and source the DHCP relay packets using this loopback IP address. This will help the DHCP server to send the response back to the PE that initiated the DHCP relay. Add the option-82 "server-id-override" configuration. This will include the IP address of the IRB in the DHCP relay packet which enables the DHCP server to identify the pool for the DHCP request. 

 

set routing-instances test forwarding-options dhcp-relay server-group test_Group1 <Server IP address>

set routing-instances test forwarding-options dhcp-relay group server_test active-servergroup test_Group1

set routing-instances test forwarding-options dhcp-relay group test_Group1 overrides relaysource lo0.XXX

set routing-instances test forwarding-options dhcp-relay group test_Group1 relay-option-82 server-id-override

set routing-instances test forwarding-options dhcp-relay group test_Group1 interface irb.X

set routing-instances test forwarding-options dhcp-relay group test_Group1 interface irb.XX

set routing-instances test forwarding-options dhcp-relay group test_Group1 interface irb.XXX

 

 

Modification History

2024-02-02 : Article Created