1-3DHCP-ACK packet, it broadcasts an ARP packet with the assigned IP address as the destinationaddress to detect the assigned IP address, and uses the IP address only if it does not receive anyresponse within a specified period.z After the client receives the DHCP-ACK message, it will probe whether the IP address assigned bythe server is in use by broadcasting a gratuitous ARP packet. If the client receives no responsewithin specified time, the client can use this IP address. Otherwise, the client sends aDHCP-DECLINE message to the server and requests an IP address again.z If there are multiple DHCP servers, IP addresses offered by other DHCP servers are assignable toother clients.Updating IP Address LeaseAfter a DHCP server dynamically assigns an IP address to a DHCP client, the IP address keeps validonly within a specified lease time and will be reclaimed by the DHCP server when the lease expires. Ifthe DHCP client wants to use the IP address for a longer time, it must update the IP lease.By default, a DHCP client updates its IP address lease automatically by unicasting a DHCP-REQUESTpacket to the DHCP server when half of the lease time elapses. The DHCP server responds with aDHCP-ACK packet to notify the DHCP client of a new IP lease if the server can assign the same IPaddress to the client. Otherwise, the DHCP server responds with a DHCP-NAK packet to notify theDHCP client that the IP address will be reclaimed when the lease time expires.If the DHCP client fails to update its IP address lease when half of the lease time elapses, it will updateits IP address lease by broadcasting a DHCP-REQUEST packet to the DHCP servers again whenseven-eighths of the lease time elapses. The DHCP server performs the same operations as thosedescribed above.DHCP Packet FormatDHCP has eight types of packets. They have the same format, but the values of some fields in thepackets are different. The DHCP packet format is based on that of the BOOTP packets. The followingfigure describes the packet format (the number in the brackets indicates the field length, in bytes):