Want to learn more about router and switch management? Automatically sign up for our free Cisco Routers and Switches newsletter, delivered each Friday!
If you want to configure Dynamic Host Configuration Protocol (DHCP) on PC clients, you currently have multiple options to choose for your DHCP server. One of the more common ways to accomplish this is by using a Windows or Linux server. However, most home networks get DHCP from their DSL or cable router.
Many administrators forget—or don't even realize—that DHCP is also available on Cisco IOS routers and switches. Keep in mind that DHCP is only available on newer IOS-based switches. For example, Catalyst 3550 and 3750 offer DHCP.
Deciding if this is right for your organization
Using a router as a DHCP server has its pros and cons. For example, let's say you have a multisite network, and you've decided to use your routers as DHCP servers for each network.
One benefit of running DHCP on a routers is that it doesn't require any extra hardware (like a Windows server does). In addition, running DHCP on a router can save your organization the cost of a dedicated DHCP server. It also provides DHCP locally at each site—regardless of whether the WAN is operational.
But there are some drawbacks. For example, some administrators might not be too comfortable monitoring and troubleshooting DHCP from a router; they may prefer to use Windows DHCP Manager rather than Cisco IOS commands to check the status of client leases, manually terminate a DHCP lease, or assign a static reservation. In addition, some administrators might prefer implementing a centralized DHCP server in order to have one place to monitor and troubleshoot DHCP.
Of course, every IT shop is different, with varying skill sets, comfort levels, and budgets. Depending on your organization's needs, Cisco IOS DHCP could be the perfect fit for your network.
Let's look at how to configure basic DHCP on an IOS-based router. For this example, we'll start off with the default configuration on a Cisco 2611 router running IOS 12.2. (The configuration should be the same—or very similar—on all IOS-based routers).
To begin, connect the router's Ethernet port to a switch, and connect the switch to a laptop, which will serve as the DHCP client.
To configure Cisco IOS DHCP, follow these steps, which include sample commands:
- Configure an IP address on the router's Ethernet port, and bring up the interface. (On an existing router, you would have already done this.)
Router(config)# interface ethernet0/0
Router(config-if)#ip address 22.214.171.124 255.0.0.0
Router(config-if)# no shutdown
- Create a DHCP IP address pool for the IP addresses you want to use.
Router(config)# ip dhcp pool mypool
- Specify the network and subnet for the addresses you want to use from the pool.
Router(dhcp-config)# network 126.96.36.199 /8
- Specify the DNS domain name for the clients.
- Specify the primary and secondary DNS servers.
Router(dhcp-config)#dns-server 188.8.131.52 184.108.40.206
- Specify the default router (i.e., default gateway).
- Specify the lease duration for the addresses you're using from the pool.
- Exit Pool Configuration Mode.
This takes you back to the global configuration prompt. Next, exclude any addresses in the pool range that you don't want to hand out.
For example, let's say that you've decided that all IP addresses up to .100 will be for static IP devices such as servers and printers. All IP addresses above .100 will be available in the pool for DHCP clients.
Here's an example of how to exclude IP addresses .100 and below:
Router(config)#ip dhcp excluded-address 220.127.116.11 18.104.22.168
Next, enter the ipconfig /renew command on the laptop to receive an IP address. After you have the IP address, enter the ipconfig /all command. Listing A shows sample output from this command.
Using DHCP commands
After configuring DHCP on the router, you can use DHCP show commands to see what's going on. For example, you can use one of the most common DHCP commands to view which DHCP IP addresses currently have leases: show ip dhcp bindings.
Listing B shows sample output from this command. From this output, you can see that my PC received the IP address of 22.214.171.124 (the first address after 100) and its MAC address.
Keep in mind that DHCP configuration can be very complex on Cisco routers. You can configure backup servers, settings to prevent conflicts, secure DHCP, and many other options. For more information, check out Cisco's Configuring DHCP documentation.
David Davis has worked in the IT industry for 12 years and holds several certifications, including CCIE, MCSE+I, CISSP, CCNA, CCDA, and CCNP. He currently manages a group of systems/network administrators for a privately owned retail company and performs networking/systems consulting on a part-time basis.