What is DHCP and how does it work?
The host in any network can be assigned the IP address manually or dynamically. In a small home network having 2 or 3 computers, we can assign the IP addresses manually but imagine a network having hundreds of computer and you have to assign the IP addresses to all of them. It can be a nightmare for network administrators!! No two hosts can have the same IP address and assigning them IP address manually can lead to errors and confusion. So, to resolve this problem DHCP is needed. The DHCP is needed to simplify the assignment of IP addresses on a network. So, let's learn more about DHCP as we go through this blog.
Dynamic Host Configuration Protocol is a network management protocol that is used to dynamically assign the IP address and other information to each host on the network so that they can communicate efficiently. DHCP automates and centrally manages the assignment of IP address easing the work of network administrator. In addition to the IP address, the DHCP also assigns the subnet masks, default gateway and domain name server(DNS) address and other configuration to the host and by doing so, it makes the task of network administrator easier.
Components of DHCP
- DHCP Server: It is typically a server or a router that holds the network configuration information.
- DHCP Client: It is the endpoint that gets the configuration information from the server like any computer or mobile.
- DHCP Relay Agent: If you have only one DHCP Server for multiple LAN’s then the DHCP relay agent present in every network will forward the DHCP request to the servers. This because the DHCP packets cannot travel across the router. Hence, the relay agent is required so that DHCP servers can handle the request from all the networks.
- IP address pool: It contains the list of IP address which are available for assignment to the client.
- Subnet Mask: It tells the host that in which network it is currently present.
- Lease Time: It is the amount of time for which the IP address is available to the client. After this time the client must renew the IP address.
- Gateway Address: The gateway address lets the host know where the gateway is to connect to the internet.
How do DHCP works?
DHCP works at the application layer to dynamically assign the IP address to the client and this happens through the exchange of a series of messages called DHCP transactions or DHCP conversation.
- DHCP Discovery: The DHCP client broadcast messages to discover the DHCP servers. The client computer sends a packet with the default broadcast destination of 255.255.255.255 or the specific subnet broadcast address if any configured. 255.255.255.255 is a special broadcast address, which means “this network”: it lets you send a broadcast packet to the network you’re connected to.
- DHCP Offer: When the DHCP server receives the DHCP Discover message then it suggests or offers an IP address(form IP address pool) to the client by sending a DHCP offer message to the client. This DHCP offer message contains the proposed IP address for DHCP client, IP address of the server, MAC address of the client, subnet mask, default gateway, DNS address, and lease information.
- the proposed IP address for DHCP client (here 192.168.1.11)
- Subnet mask to identify the network (here 255.255.255.0)
- IP of the default gateway for the subnet (here 192.168.1.1)
- IP of DNS server for name translations (here 126.96.36.199)
- DHCP Request: In most cases, the client can receive multiple DHCP offer because in a network there are many DHCP servers(as they provide fault tolerance). If the IP addressing of one server fails then other servers can provide backup. But, the client will accept only one DHCP offer. In response to the offer, the client sends a DHCP Request requesting the offered address from one of the DHCP servers. All the other offered IP addresses from remaining DHCP servers are withdrawn and returned to the pool of IP available addresses.
- DHCP Acknowledgment: The server then sends Acknowledgment to the client confirming the DHCP lease to the client. The server might send any other configuration that the client may have asked. At this step, the IP configuration is completed and the client can use the new IP settings.
Advantages of DHCP
- It is easy to implement and automatic assignment of an IP address means an accurate IP address.
- The manual configuration of the IP address is not required. Hence, it saves time and workload for the network administrators.
- Duplicate or invalid IP assignments are not there which means there is no IP address conflict.
- It is a great benefit for mobile users as the new valid configurations are automatically obtained when they change their network.
Disadvantages of DHCP
- As the DHCP servers have no secure mechanism for the authentication of the client so any new client can join the network. This posses security risks like unauthorized clients being given IP address and IP address depletion from unauthorized clients.
- The DHCP server can be a single point of failure if the network has only one DHCP server.
This is all about DHCP and its working. Hope you learned something new today.
Keep Learning :)