The IOS DHCP server can be configured to provide different address information to clients based on information they provide via DHCP option 60.
DHCP Option 60 is the “vendor class identifier option” that allows the DHCP client to identify its type so that custom configuration can be applied.
Configuring the DHCP Client
For custom address configuration to be applied the client must specify option 60. This is configured with the “ip dhcp client class-id XXX” command, where XXX is an ASCII label to use. For example:
interface Vlan10
description ** Corporate LAN - Management Address **
ip dhcp client class-id CUSTOM_CLASS
ip address dhcp
end
Configuring the DHCP Server
To configure the IOS DHCP server you must specify a default class and then a class that will match against DHCP option 60. When matching against option 60 you must convert the ASCII string the client sends (e.g. “CUSTOM_CLASS”) to hexadecimal.
ip dhcp class DEFAULT
remark IP addresses for devices not providing a class-id
!
ip dhcp class CUSTOM_CLASS
remark IP addresses for devices providing "CUSTOM_CLASS"
option 60 hex 435553544f4d5f434c415353
With the matching setup the DHCP pool configuration can be split into the custom class and a default:
ip dhcp pool LAN
network 192.168.0.0 255.255.255.0
default-router 192.168.0.254
class CUSTOM_CLASS
address range 192.168.0.210 192.168.0.220
class DEFAULT
address range 192.168.0.0 192.168.0.200
If this doesn’t work the following debug commands may be helpful in identifying the cause of the problem:
debug ip dhcp server class
debug ip dhcp server packet detail