Dynamic Host Control Protocol (DHCP) enables you to automatically assign reusable IP addresses
to DHCP clients. The Cisco IOS DHCP Server feature is a full DHCP server implementation that
assigns and manages IP addresses from specified address pools within the router to DHCP clients.
If the Cisco IOS DHCP Servercannot satisfy a DHCP request from its own database, it can forward
the request to one or more secondary DHCP servers defined by the network administrator.
Figure 1 shows the basic steps that occur when a DHCP client requests an IP address from a DHCP
server. The client, Host A, sends a DHCPDISCOVER broadcast message to locate a Cisco IOS
DHCP Server. A DHCP server offers configuration parameters (such as an IP address, a MAC
address, a domain name, and a lease for the IP address) to the client in a DHSCPOFFER unicast
message.
Figure 1DHCP Request for an IP Address from a DHCP Server
Host A
Note A DHCP client may receive offers from multiple DHCP servers and can accept any one of the
offers; however, the client usually accepts the first offer it receives. Additionally, the offer from the
DHCP server is not a guarantee that the IP address will be allocated to the client; however, the server
usually reserves the address until the client has had a chance to formally request the address.
The client returns a formal request for the offered IP address to the DHCP server in a
DHCPREQUEST broadcast message. The DHCP server confirms that the IP address has been
allocated to the client by returning a DHCPACK unicast message to the client.
DHCPDISCOVER (broadcast)
DHCPOFFER (unicast)
DHCPREQUEST (broadcast)
DHCPACK (unicast)
Cisco IOS
DHCP server
32369
Cisco IOS DHCP Server 1
Benefits
Benefits
Note The formal request for the offered IP address (the DHCPREQUEST message) that is sent by
the client is broadcast so that all other DHCP servers that received the DHCPDISCOVERbroadcast
message from the client can reclaim the IP addresses that they offered to the client.
If the configuration parameters sent to the client in the DHCPOFFER unicast message by the DHCP
server are invalid (a misconfiguration error exists), the client returns a DHCPDECLINE broadcast
message to the DHCP server.
The DHCP server will send to the client a DHCPNAK denial broadcast message, which means the
offered configuration parameters have not been assigned, if an error has occurred during the
negotiationof the parameters or the client hasbeen slow in responding to the DHCPOFFER message
(the DHCP server assigned the parameters to another client) of the DHCP server.
The Cisco IOS DHCP Server feature offers the following benefits:
• Reduced Internet access costs
Using automatic IP address assignment at each remote site substantially reduces Internet access
costs. Static IP addresses are considerably more expensive to purchase than are automatically
allocated IP addresses.
• Reduced client configuration tasks and costs
Because DHCP is easy to configure, it minimizes operational overhead and costs associated with
device configuration tasks and eases deployment by nontechnical users.
• Centralized management
Because the DHCP server maintains configurations for several subnets, an administrator only
needs to update a single, central server when configuration parameters change.
Supported Platforms
This Cisco IOS DHCP Server feature is supported on the following routers and access servers:
• Catalyst 5000 family switches with an installed Route Switch Module
• Catalyst 6000 family switches with an installed MultiLayer Switch Feature Card
• Catalyst 8500 series
• Cisco 800 series
• Cisco 1000 series
• Cisco 1400 series
• Cisco 1600 series
• Cisco 1700 series (support for the Cisco 1700 series was added in Cisco IOS Release 12.0[2]T)
Release 12.0(1)T
2
• Cisco 2500 series
• Cisco 2600 series
• Cisco 3600 series
• Cisco 3800 series
• Cisco MC3810 series
• Cisco 4000 series
• Cisco AS5100 access server
• Cisco AS5200 universal access server
• Cisco AS5300 universal access server
• Cisco 7000 series
• Cisco 7100 series
• Cisco 7200 series
• Cisco MGX 8800 with an installed Route Processor Module
• Cisco 12000 series
• Cisco uBR900 series
• Cisco uBR7200 series
Supported Standards, MIBs, and RFCs
Standards
No new or modified standards are supported by this feature.
MIBs
No new or modified MIBs are supported by this feature.
For descriptions of supported MIBs and how to use MIBs, see the Cisco MIB web site on CCO at
• RFC 1542, Clarifications and Extensions for the Bootstrap Protocol
• RFC 2131, Dynamic Host Configuration Protocol
• RFC 2132, DHCP Options and BOOTP Vendor Extensions
Cisco IOS DHCP Server 3
Prerequisites
Prerequisites
Before you configure the Cisco IOS DHCP Server feature, complete the following tasks:
• Identify an external File Transport Protocol (FTP), Trivial File Transfer Protocol (TFTP), or
remote copy protocol (rcp) server that you will use to store the DHCP bindings database.
• Identify the IP addresses that you will enable the DHCP server to assign, and the IP addresses
that you will exclude.
• Identify DHCP options for devices where necessary, including:
— Default boot image name
— Default router(s)
— Domain Name System (DNS) server(s)
— NetBIOS name server
• Decide on a NetBIOS node type (b, p, m, or h).
• Decide on a DNS domain name.
DHCP Configuration Task List
The DHCP server database is organized as a tree. The root of the tree is the address pool for natural
networks, branches are subnetwork address pools, and leaves are manual bindings to clients.
Subnetworks inherit network parameters and clients inherit subnetwork parameters. Therefore,
common parameters, for example the domain name, should be configured at the highest (network or
subnetwork) level of the tree.
Note Inherited parameters can be overridden. For example, if a parameter is defined in both the
natural network and a subnetwork, the definition of the subnetwork is used.
Address leases are not inherited. If a lease is not specified for an IP address, by default, the DHCP
server assigns a one-day lease for the address.
To configure the Cisco IOS DHCP Server feature, first configure a database agent or disable conflict
logging, then configure IP addresses that the DHCP server should not assign (excluded addresses)
and should assign (a pool of available IP addresses) to requesting clients. These configuration tasks
are explained in the following sections. Each task in the following list is identified as required or
optional.
• Configuring a DHCP Database Agent or Disabling DHCP Conflict Logging (Required)
• Excluding IP Addresses (Required)
• Configuring a DHCP Address Pool (Required)
Release 12.0(1)T
4
• Configuring Manual Bindings (Optional)
• Configuring a DHCP Server Boot File (Optional)
• Configuring the Number of Ping Packets (Optional)
• Configuring the Timeout Value for Ping Packets (Optional)
• Enabling the Cisco IOS DHCP Server Feature (Optional)
Configuring a DHCP Database Agent or Disabling DHCP Conflict Logging
Configuring a DHCP Database Agent or Disabling DHCP Conflict
Logging
A DHCP database agent is any host, for example, an FTP, TFTP, or RCP server that stores the DHCP
bindings database. You can configure multiple DHCP database agents and you can configure the
interval between database updates and transfers for each agent. To configure a database agent and
database agent parameters, use the following command in global configuration mode:
CommandPurpose
Router(config)# ip dhcp database url
[timeout seconds | write-delay seconds]
If you choose not to configure a DHCP database agent, disable the recording of DHCP address
conflicts on the DHCP server. To disable DHCP address conflict logging, use the following
command in global configuration mode:
CommandPurpose
Router(config)# no ip dhcp conflict
logging
Configures the database agent and the interval between
database updates and database transfers.
Disables DHCP address conflict logging.
Excluding IP Addresses
The DHCP server assumes that all IP addresses in a DHCP address pool subnet are available for
assigning to DHCP clients. You must specify the IP address that the DHCP server should not assign
to clients. To do so, use the following command in global configuration mode:
CommandPurpose
Router(config)# ip dhcp
excluded-address low-address
[high-address]
Specifies the IP addresses that the DHCP server should not
assign to DHCP clients.
Configuring a DHCP Address Pool
You can configure a DHCP address pool with a name that is a symbolic string (such as
“engineering”) or an integer (such as 0). Configuring a DHCP address pool also places you in DHCP
pool configuration mode—identified by the (config-dhcp)# prompt—from which you can configure
pool parameters (for example, the IP subnet number and default router list). To configure a DHCP
address pool, complete the required tasks in the following sections.
Configuring the DHCP Address Pool Name and Entering DHCP Pool
Configuration Mode
To configure the DHCP address pool name and enter DHCP pool configuration mode, use the
following command in global configuration mode:
CommandPurpose
Router(config)# ip dhcp pool nameCreates a name for the DHCP server address pool and places
you in DHCP pool configuration mode (identified by the
config-dhcp# prompt).
Cisco IOS DHCP Server 5
DHCP Configuration Task List
Configuring the DHCP Address Pool Subnet and Mask
To configure a subnet and mask for the newly created DHCP address pool, which contains the range
of available IP addresses that the DHCP server may assign to clients, use the following command in
DHCP pool configuration mode:
Note You can not configure manual bindings within the same pool that is configured with the
Specifies the subnet network number and mask of the DHCP
address pool.
The prefix length specifies the number of bits that comprise the
address prefix. The prefix is an alternative way of specifying
the network mask of the client. The prefix length must be
preceded by a forward slash (/).
network command. To configure manual bindings, see the “Configuring Manual Bindings” section.
Configuring the Domain Name for the Client
The domain name of a DHCP client places the client in the general grouping of networks that make
up the domain. To configure a domain name string for the client, use the following command in
DHCP pool configuration mode:
CommandPurpose
Router(config-dhcp)# domain-name
domain
Specifies the domain name for the client.
Configuring the Domain Name System IP Servers for the Client
DHCP clients query DNS IP servers when they need to correlate host names to IP addresses. To
configure the DNS IP servers that are available to a DHCP client, use the following command in
DHCP pool configuration mode:
Specifies the IP address of a DNS server that is available to a
DHCP client. One IP address is required; however, you can
specify up to eight IP addresses in one command line.
Configuring the NetBIOS Windows Internet Naming Service IP Servers for the
Client
WindowsInternet Naming Service(WINS) is a name resolutionservice that Microsoft DHCP clients
use to correlate host names to IP addresses within a general grouping of networks. Toconfigure the
NetBIOS WINS servers that are available to a Microsoft DHCP client, use the following command
in DHCP pool configuration mode:
Specifies the NetBIOS WINS server that is available to a
Microsoft DHCP client. One address is required; however, you
can specify up to eight addresses in one command line.
Configuring the NetBIOS Node Type for the Client
Configuring the NetBIOS Node Type for the Client
The NetBIOS node type for Microsoft DHCP clients can be one of four settings: broadcast,
peer-to-peer,mixed, or hybrid. Toconfigure the NetBIOS node type for a Microsoft DHCP,use the
following command in DHCP pool configuration mode:
CommandPurpose
Router(config-dhcp)# netbios-node-type
type
Specifies the NetBIOS node type for a Microsoft DHCP client.
Configuring the Default Router for the Client
Aftera DHCP client has booted, the client begins sending packetsto its default router.The IP address
of the default router should be on the same subnet as the client. To configure a default router for a
DHCP client, use the following command in DHCP pool configuration mode:
Specifies the IP address of the default router for a DHCP client.
One IP address is required, although you can specify up to
eight addresses in one command line.
Configuring the Address Lease Time
By default, each IP address assigned by a DHCP server comes with a one-day lease, which is the
amount of time that the address is valid. To change the lease value for an IP address, use the
following command in DHCP pool configuration mode:
An address binding is a mapping between the IP address and Media Access Control (MAC) address
of a client. The IP address of a client can be assigned manually by an administrator or assigned
automatically from a pool by a DHCP server.
Manual bindings are IP addresses that have been manually mapped to the MAC addresses of hosts
that are found in the DHCP database. Manual bindings are stored in NVRAM on the DHCP server.
Manual bindings are just special address pools. There is no limit on the number of manual bindings
but you can only configure one manual binding per host pool.
Automatic bindings are IP addresses that have been automatically mapped to the MACaddresses of
hosts that are found in the DHCP database. Automatic bindings are stored on a remote host called a
database agent. The bindings are saved as text records for easy maintenance.
To configure a manual binding, first create a host pool, then specify the IP address and hardware
address of the client or client identifier. The hardware address is the MAC address. The client
identifier, which is required for Microsoft clients (instead of hardware addresses), is formed by
concatenating the media type and the MAC address of the client. Refer to the “Address Resolution
Protocol Parameters” section of RFC 1700, Assigned Numbers, for a list of media type codes.
Specifies the duration of the lease. The default is a a one-day
lease.
Cisco IOS DHCP Server 7
DHCP Configuration Task List
Toconfigure manual bindings, use the following commands beginningin global configuration mode:
StepCommandPurpose
1Router(config)# ip dhcp pool nameCreates a name for the a DHCP server address
2Router(config-dhcp)# host address [mask |
3Router(config-dhcp)# hardware-address
4Router(config-dhcp)# client-name name(Optional) Specifies the name of the client using
/prefix-length]
hardware-address type
or
Router(config-dhcp)# client-identifier
unique-identifier
pool and places you in DHCP pool configuration
mode—identified by the (config-dhcp)# prompt.
Specifies the IP address and subnet mask of the
client.
The prefix length specifies the number of bits that
comprise the address prefix. The prefix is an
alternativeway of specifying the network mask of
the client. The prefix length must be preceded by
a forward slash (/).
Specifies a hardware address for the client.
Specifies the distinct identification of the client in
dotted-hexadecimal notation, for example,
01b7.0813.8811.66, where 01 represents the
Ethernet media type.
any standard ASCII character. The client name
should not include the domain name. For
example, the name mars should not be specified
as mars.cisco.com.
Configuring a DHCP Server Boot File
The boot file is used to store the boot image for the client. The boot image is generally the operating
system the client uses to load. Tospecifya boot file for the DHCP client, use the following command
in DHCP pool configuration mode:
CommandPurpose
Router(config-dhcp)# bootfile filenameSpecifies the name of the file that is used as a boot image.
Configuring the Number of Ping Packets
By default, the DHCP server pings a pool address twice before assigning the address to a requesting
client. If the ping is unanswered, the DHCP server assumes (with a high probability) that the address
is not in use and assigns the address to the requesting client. To change the number of ping packets
the DHCP server should send to the pool address before assigning the address, use the following
command in global configuration mode:
CommandPurpose
Router(config)# ip dhcp ping packets
number
Specifies the number of ping packets the DHCP server sends to
a pool address before assigning the address to a requesting client. The default is two packets.
Release 12.0(1)T
8
Configuring the Timeout Value for Ping Packets
Configuring the Timeout Value for Ping Packets
By default, the DHCP server waits 500 milliseconds before timing out a ping packet. To change the
amount of time the server waits, use the following command in global configuration mode:
CommandPurpose
Router(config)# ip dhcp ping timeout
milliseconds
Specifies the amount of time the DHCP server must wait
before timing out a ping packet. The default 500 milliseconds.
Enabling the Cisco IOS DHCP Server Feature
By default, the Cisco IOS DHCP Server feature is enabled on your router. If the feature is disabled,
use the following command in global configuration mode to reenable the Cisco IOS DHCP Server
feature on your router:
CommandPurpose
Router(config)# service dhcpEnables the Cisco IOS DHCP Server feature on your router.
Use the no form of this command to disable the Cisco IOS
DHCP Server feature.
Monitoring and Maintaining the DHCP Server
To clear DHCP server variables, use the following commands in privileged EXEC mode, as needed:
CommandPurpose
Router# clear ip dhcp binding address | * Deletes an automatic address binding from the DHCP
database. Specifying address clears the automatic binding for
a specific (client) IP address whereas specifying asterisk (*)
clears all automatic bindings.
Router# clear ip dhcp conflict address | * Clears an address conflict from the DHCP database. Specify-
ing address clears the conflict for a specific IP address
whereas specifying an asterisk (*) clears conflicts for all
addresses.
Router# clear ip dhcp server statisticsResets all DHCP server counters to 0.
To enable DHCP server debugging, use the following command in privileged EXEC mode, as
needed:
CommandPurpose
Router# debug ip dhcp server {events |
packets | linkage}
Enables debugging on the DHCP server.
Cisco IOS DHCP Server 9
Configuration Examples
To display DHCP server information, use the following commands in EXEC mode, as needed:
CommandPurpose
Router> show ip dhcp binding [address]Displays a list of all bindings created on a specific DHCP
Router> show ip dhcp conflict [address]Displays a list of all address conflicts recorded by a specific
Router# show ip dhcp database [url]Displays recent activity on the DHCP database.
Router> show ip dhcp server statisticsDisplays count information about server statistics and mes-
Configuration Examples
This section provides the following configuration examples:
• DHCP Database Agent Configuration Example
• DHCP Address Pool Configuration Example
server.
DHCP server.
Note Use this command in privileged EXEC mode.
sages sent and received.
• Manual Bindings Configuration Example
DHCP Database Agent Configuration Example
The following example stores bindings on host 172.16.4.253. The file transfer protocol is FTP.The
server should wait 2 minutes (120 seconds) before writing database changes.
ip dhcp database ftp://user:password@172.16.4.253/router-dhcp write-delay 120
DHCP Address Pool Configuration Example
In the following example, three DHCP address pools are created: one in network 172.16.0.0, one in
subnetwork172.16.1.0,and one in subnetwork 172.16.2.0. Attributesfromnetwork172.16.0.0, such
as the domain name, DNS server, NetBIOS name server, and NetBIOS node type, are inherited in
subnetworks 172.16.1.0 and 172.16.2.0. In each pool, clients are granted 30-day leases and all
addresses in each subnetwork, except the excluded addresses, are available to the DHCP server for
assigning to clients. Table 1 lists the IP addresses for the devices in three DHCP address pools.
Table 1DHCP Address Pool Devices
Pool 0 (Network 172.16.0.0)Pool 1 (Subnetwork 172.16.1.0)Pool 2 (Subnetwork 172.16.2.0)
DeviceIP AddressDeviceIP AddressDeviceIP Address
Default routers–Default routers172.16.1.100
172.16.1.101
DNS server172.16.1.102————
172.16.2.102
NetBIOS name server172.16.1.103————
172.16.2.103
NetBIOS node typeh-node————
Default routers172.16.2.100
172.16.2.101
Release 12.0(1)T
10
ip dhcp database ftp://user:password@172.16.4.253/router-dhcp write-delay 120
ip dhcp excluded-address 172.16.1.100 172.16.1.103
ip dhcp excluded-address 172.16.2.100 172.16.2.103
!
ip dhcp pool 0
The following example creates a manual binding for a client named Mars.cisco.com. The MAC
address of the client is 02c7.f800.0422 and the IP address of the client is 172.16.2.254.
ip dhcp pool Mars
host 172.16.2.254
hardware-address 02c7.f800.0422 ieee802
client-name Mars
Manual Bindings Configuration Example
Because attributes are inherited, the previous configuration is equivalent to the following:
ip dhcp pool Mars
host 172.16.2.254 mask 255.255.255.0
hardware-address 02c7.f800.0422 ieee802
client-name Mars
default-router 172.16.2.100 172.16.2.101
domain-name cisco.com
dns-server 172.16.1.102 172.16.2.102
netbios-name-server 172.16.1.103 172.16.2.103
netbios-node-type h-node
Cisco IOS DHCP Server 11
Command Reference
Command Reference
This section documents new or modified commands. All other commands used with this feature are
documented in the Cisco IOS Release 12.0 command reference publications.
• bootfile
• clear ip dhcp binding
• clear ip dhcp conflict
• clear ip dhcp server statistics
• client-identifier
• client-name
• default-router
• dns-server
• domain-name
• hardware-address
• host
• ip dhcp conflict logging
• ip dhcp database
• ip dhcp excluded-address
• ip dhcp ping packets
• ip dhcp ping timeout
• ip dhcp pool
• ip dhcp relay information check
• ip dhcp relay information option
• ip dhcp relay information policy
• lease
• netbios-name-server
• netbios-node-type
• network (DHCP)
• next-server
• option
• service dhcp
• show ip dhcp binding
Release 12.0(1)T
12
• show ip dhcp conflict
• show ip dhcp database
• show ip dhcp server statistics
Manual Bindings Configuration Example
In Cisco IOS Release 12.0(1)T or later, you can search and filter the output for show and more
commands. This functionality is useful when you need to sort through large amounts of output, or if
you want to exclude output that you do not need to see.
To use this functionality, enter a show or more command followed by the “pipe” character (|), one
of the keywords begin, include, or exclude, and an expression that you want to search or filter on:
command | {begin | include | exclude} regular-expression
Following is an example of the show atm vc command in which you want the command output to
begin with the first line where the expression “PeakRate” appears:
show atm vc | begin PeakRate
For more information on the search and filter functionality, refer to the Cisco IOS Configuration
Fundamentals Configuration Guide.
Cisco IOS DHCP Server 13
Command Reference
bootfile
Syntax Description
Defaults
Command Modes
Tospecify the name of the defaultboot image for a Dynamic Host Configuration Protocol (DHCP)
client, use the bootfile DHCP pool configuration command. Use the no form of this command to
delete the boot image name.
bootfile filename
no bootfile
filenameSpecifies the name of the file that is used as a boot image.
No default behavior or values.
DHCP pool configuration
Usage Guidelines
Examples
Related Commands
This command first appeared in Cisco IOS Release 12.0(1)T.
The following example specifies xllboot as the name of the boot file:
bootfile xllboot
ip dhcp pool
next-server
Release 12.0(1)T
14
clear ip dhcp binding
To delete an automatic address binding from the Cisco IOS Dynamic Host Configuration Protocol
(DHCP) Server database, use the clear ip dhcp binding privileged EXEC command.
clear ip dhcp binding address | *
Syntax Description
addressThe address of the binding you want to clear.
*Clears all automatic bindings.
Command Modes
Privileged EXEC
Usage Guidelines
Typically, the address denotes the client’s IP address. If the asterisk (*) character is used as the
address parameter, DHCP clears all automatic bindings.
clear ip dhcp binding
Examples
Related Commands
Use the no ip dhcp pool global configuration command to delete a manual binding.
The following example deletes the address binding 10.12.1.99 from a DHCP server database:
clear ip dhcp binding 10.12.1.99
show ip dhcp binding
Cisco IOS DHCP Server 15
Command Reference
clear ip dhcp conflict
To clear an address conflict from the Cisco IOS Dynamic Host Configuration Protocol (DHCP)
Server database, use the clear ip dhcp conflict privileged EXEC command.
clear ip dhcp conflict address | *
Syntax Description
addressThe IP address of the host that contains the conflicting address you
*Clears all address conflicts.
Command Modes
Privileged EXEC
want to clear.
Usage Guidelines
Examples
Related Commands
This command first appeared in Cisco IOS Release 12.0(1)T.
The server detects conflicts using a ping session. The client detects conflicts using gratuitous
Address Resolution Protocol (ARP). If the asterisk (*) character is used as the address parameter,
DHCP clears all conflicts.
The following example shows an address conflict of 10.12.1.99 being deleted from the DHCP server
database:
clear ip dhcp conflict 10.12.1.99
show ip dhcp conflict
Release 12.0(1)T
16
Loading...
+ 36 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.