DHCP - Cisco Client ID format

Cisco devices that act as DHCP clients will by default use a proprietary client ID format. The format is the following:

cisco-5254.0006.dbd9-Gi0/1

It begins with the word "cisco" followed by the MAC address, and the interface number. This value is actually stored in the DHCP message in ASCII code. In the output of various show commands, this client ID may be displayed as a hexadecimal value as well. For example:

DHCP#show ip dhcp binding Bindings from all pools not associated with VRF: IP address Client-ID/ Lease expiration Type Hardware address/ User name 192.168.12.2 0063.6973.636f.2d63. Mar 02 2002 12:24 AM Automatic 6330.372e.3132.3265. 2e30.3030.302d.4661. 302f.30

Note that the client ID is the following hex value displayed above:

0063.6973.636f.2d63.6330.372e.3132.3265.2e30.3030.302d.4661.302f.30

If we were to translate this hex value to ASCII, we get cisco-5254.0006.dbd9-Gi0/1 which is the initial client ID of the client.

Cisco devices can use a wide variety of Client ID formats beyond this default. The following context sensitive help from the CLI of a Cisco router shows the various options:

R1(config-if)#ip dhcp client client-id ? Async Async interface Auto-Template Auto-Template interface BDI Bridge-Domain interface BVI Bridge-Group Virtual Interface CDMA-Ix CDMA Ix interface CTunnel CTunnel interface Dialer Dialer interface GMPLS MPLS interface GigabitEthernet GigabitEthernet IEEE 802.3z LISP Locator/ID Separation Protocol Virtual Interface LongReachEthernet Long-Reach Ethernet interface Loopback Loopback interface Lspvif LSP virtual interface MFR Multilink Frame Relay bundle interface Multilink Multilink-group interface Null Null interface Tunnel Tunnel interface Vif PGM Multicast Host interface Virtual-PPP Virtual PPP interface Virtual-Template Virtual Template interface Virtual-TokenRing Virtual TokenRing ascii Client-ID as ascii string hex Client-ID in hex vmi Virtual Multipoint Interface R1(config-if)#ip dhcp client client-id

The default is the ascii option. However, you can actually change the string you use by issuing anything you like as the client ID.

The MAC address can be configured to be used as the client ID using the following interface command:

R1(config-if)#ip dhcp client client-id gigabitethernet

https://forum.networklessons.com/t/cisco-ios-dhcp-client-identifier/1284/7?u=lagapidis

https://networklessons.com/cisco/ccie-enterprise-infrastructure/cisco-ios-dhcp-client-identifier

https://www.cisco.com/c/en/us/td/docs/ios/12_2sb/12_2sba/feature/guide/sbhcpcf.html#:~:text=By%20default%2C%20the%20client%20identifier,address%20of%20the%20named%20interface.&text=(Optional)%20The%20interface%20name%20from,the%20MAC%20address%20is%20taken.

https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr/command/ipaddr-cr-book/ipaddr-r1.html#wp2790763288

https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr/command/ipaddr-cr-book/ipaddr-i1.html#wp1820979811