
DORA- Today I am going to talk about DHCP which stands for Dynamic Host Configuration Protocol. DHCP is a network management protocol that is used to dynamically assign IP addresses and other network configuration parameters to devices automatically. DHCP reduces manually having to assign device after device. DHCP is stateful, meaning that every IP address assigned is tracked and stored inside the DHCP server. The process of obtaining an IP address lease from a DHCP server is called “DORA.” DORA stands for “Discover, Offer, Request and Acknowledgement.”
Discover- The first step of the DHCP process starts with a DHCP message called discover. This message is sent as a broadcast from a client host usually when it first comes into the LAN topology or if their recent lease had expired. Since the host does not have an IP address during this phase of the DHCP process, the client sends this as a broadcast packet that is only able to reach the server on the LAN. The source IP for this broadcast packet is 0.0.0.0 and the destination IP is 255.255.255.255. The job of this packet is to locate any DHCP server that is connected to the local network. It is essentially asking “is there a DHCP server on this network?”
Offer- If there is a DHCP server on the same network as the client that has broadcasted the discovery packet, the server will then respond with an “offer” packet. This message can either be sent as a unicast or broadcast, and will include the IP address along with other network configuration parameters such as default gateway IP address, DNS server IP address, and the subnet mask of the IP address. Other information can include lease duration as well as the DHCP server’s IP address. The offer is basically a proposal to the client, giving the client the option to either accept or reject the IP address lease. If there are multiple DHCP servers on the network, multiple DHCP servers will send an offer, but the client can only choose one and the chosen one is usually the first one. When a DHCP server sends an offer, it reserves the IP address temporarily to avoid IP address conflicts such as assigning the IP to another host on the network.
Request- When the client receives the offer, the client host will then be given the option to accept or reject the IP address proposal. The decision made will be sent as a DHCP “request” packet. This request packet will serve as the formal acceptance that the client desires to use the offered IP address lease. This is basically the client saying “I see the IP address and I want to use it.” Even though the client sends the acceptance, the DHCP request message is sent as a broadcast. It serves two purposes, with the first one of letting the target DHCP server that its IP address lease was desired and if there were multiple offers it serves as a denial to the other DHCP servers. This allows the temporarily reserved IP addresses from those pools to be immediately returned back into the IP address pool.
ACK- Once the target DHCP server receives this DHCP request message from the client, the final message of this exchange is the DHCP “ACK.” The DHCP ACK message is a message sent by the DHCP server to the client to confirm that the client’s requested IP address has been confirmed and successfully assigned. This message essentially makes the IP to MAC binding official, and when the client host receives this ACK message it will be immediately assigned to the network interface.
Leave a Reply