6

Why do DHCP servers (specifically Cisco) use "Client-ID Options", not the CHADDR (client MAC) in the DHCP request, for static binding?

From: Configuring DHCP

All DHCP clients send a client identifier (DHCP option 61) in the DHCP packet. To configure manual bindings, you must enter the client-identifier DHCP pool configuration command with the appropriate hexadecimal values identifying the DHCP client.

  1. Router(dhcp-config)# client-identifier unique-identifier
  2. Router(dhcp-config)# hardware-address hardware-address type
  1. For DHCP Req.
  2. For BOOTP Req.
Ricky
  • 31,438
  • 2
  • 43
  • 84
t3mp
  • 710
  • 6
  • 8
  • If I remember correctly, if you only use *hardware-address*, IOS will fallback to the bootp process and match only on MAC. But I've not tried that since the 12.0 days. – Ricky Dec 04 '13 at 07:09
  • Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you can post and accept your own answer. – Ron Maupin Jan 05 '21 at 01:28

1 Answers1

4

Mostly because that's what the specs say you should use. While the client-id will almost always include (or entirely be) a MAC, it's a bad habit as NICs do sometimes get replaced (failures, upgrades, etc.) Most DHCP clients allow the user to specify an identifier.

BOOTP has no choice, as it has no such option(s). BOOTP predates DHCP, and is far, far, simpler.

(consult the RFC's if you really want to know how it all works.)

Ricky
  • 31,438
  • 2
  • 43
  • 84