3

Is it possible to have multiple dhcp relay servers in line?

IOW DHCP client <=> DHCP Relay A <=> DHCP Relay B <=> DHCP server

MDMarra
  • 100,734
  • 32
  • 197
  • 329

2 Answers2

6

Generally a DHCP relay is supposed to pick up a broadcast from a client and forward it to a specific server (read: unicast) address. Given that the packet sent by the relay to the server can be routed anywhere, the idea of cascading relays doesn't make a lot of sense. In practice it would be more likely to have some kind of intermediary DHCP server that derived pools from an upstream server.

rnxrx
  • 8,143
  • 3
  • 22
  • 31
1

Once the DHCP relay gateway address is populated on a DHCP Request, other DHCP Relays are not allowed to modify the DHCP relay gateway. The DHCP Request will be forwarded to the DHCP server by any other inline DHCP Relay that may receive the DHCP Request with the originally populated DHCP relay gateway.

Per RFC-1542 Section 4.1.1 page 14. https://datatracker.ietf.org/doc/html/rfc1542 "If the 'giaddr' field contains some non-zero value, the 'giaddr' field MUST NOT be modified."

The 'giaddr' is the "gateway" IP address. The document it also states that this address should be the address of the interface receiving the DHCPRequest. "If this field is zero, the relay agent MUST fill this field with the IP address of the interface on which the request was received."

GregnStuff
  • 11
  • 1