The Dynamic Host Configuration Protocol (DHCP) is an Internet standard defined in RFC2131 (IPv4) and RFC3315 (IPv6).
The DHCP client implementation in Symbian platform enables the client applications to configure a network connection with a DHCP server.
For more details on the DHCP standards, see RFC2131RFC2131 for IPv4, and RFC3315RFC3315 for IPv6.
This document explains the following concepts:
The following are the states of the DHCP daemon in Symbian platform:
DHCP Discover
This stage gets the IP address from the server by the DHCP clients. The DHCP client sends a DISCOVER message to the DHCP server and waits for the responses from the various DHCP servers.
Bind
The DHCP server acknowledges the BIND request with an IP address. The client selects one of the IP addresses and responds back with a BIND message. If the DHCP server acknowledges the BIND request, the client can use the IP address. If the server responds with a negative acknowledgement, the DHCP client begins the DHCP DISCOVER state.
Renew lease
The DHCP server issues an IP address, called a lease, during the bind state. When the lease is about to expire the client requests the server to renew the lease. If the client is connected to the same network the lease gets renewed. If the client has moved to a domain with a different DHCP server the client requests a new IP address using DISCOVER message.
Release lease
When the DHCP client does not require a connection it releases the lease, so that it can be configured to any other client requesting a connection.
To obtain the network parameters from the DHCP server, the client uses the DHCP options. The Internet standard RFC 2132 specifies the various DHCP options. The client uses the aOptionLevel and aOptionName arguments while calling RConnection::Ioctl() function.