DHCP Server with multiple scopes. Which one does it use to handout an IP

dhcpvlan

I have 4 DHCP Scopes.

10.200.0.0 <——–DHCP Server Lives Here

10.54.0.0

10.16.0.0

10.32.0.0

A DHCP broadcast request is sent to my DHCP server. How does it decide which scope to pull an address from?

My problem is that a client that should be getting a 10.200.0.0 address is actually getting an IP address from the 10.16.0.0 scope and I can't figure out why.

Best Answer

That's not expected behavior, so it makes me think something more complex is happening than a simple broadcast being received by the DHCP server.

When the DHCP server receives a layer 2 broadcast DHCPREQUEST it will fulfill that request out of a scope that corresponds to the subnet of the interface the DHCPREQUEST was received on, just like you expect. When it receives the request as a layer 3 unicast from a DHCP relay agent (with the GIADDR address set) it will fulfill the request out of a scope with a subnet that includes the GIADDR address.

I'd sniff the traffic coming into your DHCP server (with Microsoft NetMon or Wireshark) to be sure that the request really is arriving as a layer 2 broadcast.