< Home

DHCPv6 Implementation

DHCPv6 autoconfiguration is classified as stateful or stateless.
  • DHCPv6 stateful autoconfiguration: A DHCPv6 server automatically configures IPv6 addresses, prefixes, and network configuration parameters of the DNS, NIS, and SNTP servers.
  • DHCPv6 stateless autoconfiguration: IPv6 addresses are generated based on the Route Advertisement (RA) packets. A DHCPv6 server provides other configuration parameters such as addresses of the DNS, NIS, and SNTP servers except for IPv6 addresses.

DHCPv6 Stateful Autoconfiguration

The IPv6 node obtains addresses and other configuration parameters (such as the IPv6 address of the DNS server) through stateful DHCPv6 autoconfiguration.

A DHCPv6 server assigns addresses and prefixes to a DHCPv6 client in the following ways:

  • DHCPv6 four-message exchange
  • DHCPv6 two-message exchange

DHCPv6 Four-Message Exchange

Four-message exchange applies to a network where multiple DHCPv6 servers are available. A DHCPv6 client first multicasts a Solicit packet to locate DHCPv6 servers that can provide DHCPv6 services. After receiving Advertise packets from multiple DHCPv6 servers, the DHCPv6 client selects one of the DHCPv6 servers according to priorities of DHCPv6 servers. Then the DHCPv6 client and the selected DHCPv6 server complete address application and allocation by exchanging Request and Reply packets.

If a DHCPv6 server does not have two-message exchange enabled, the DHCPv6 server allocates addresses and configuration parameters through four-message exchange, regardless of whether the Solicit packet contains the Rapid Commit option.

Figure 1 shows the process of address allocation using four-message exchange.

Figure 1 Process of address allocation using four-message exchange

The process of address allocation using four-message exchange is as follows:

  1. A DHCPv6 client sends a Solicit packet to request a DHCPv6 server to allocate IPv6 addresses and network configuration parameters.
  2. If the DHCPv6 server does not support fast address allocation, the DHCPv6 server returns an Advertise packet containing the allocated addresses and network configuration parameters regardless of whether the Solicit packet contains the Rapid Commit option.
  3. If receiving Advertise packets from multiple DHCPv6 servers, the DHCPv6 client selects the DHCPv6 server with the highest priority and sends Request multicast packets to all DHCPv6 servers. The Request multicast packets carry the DUID of the selected DHCPv6 server.
  4. The DHCPv6 server responds with a Reply packet that contains the addresses and network configuration parameters allocated to the client.

DHCPv6 Two-Message Exchange

Two-message exchange applies to a network where only one DHCPv6 server is available. A DHCPv6 client multicasts a Solicit packet to locate the DHCPv6 server that can allocate addresses and configuration parameters. After receiving the Solicit packet, the DHCPv6 server responds with a Reply packet carrying addresses and configuration parameters allocated to the DHCPv6 client.

This packet exchange improves address allocation efficiency. On the network where multiple DHCPv6 servers are available, multiple DHCPv6 servers can allocate addresses to DHCPv6 clients and respond with Reply packets. The DHCPv6 clients, however, use the addresses and configuration parameters allocated by one DHCPv6 server. To prevent the preceding situation, the administrator can configure only one DHCPv6 server to support two-message exchange.

  • If a DHCPv6 server is configured with two-message exchange and the Solicit packet from a DHCPv6 client contains the Rapid Commit option, the DHCPv6 server allocates IPv6 addresses and configuration parameters in two-message exchange mode.
  • If a DHCPv6 server does not support fast address allocation, the DHCPv6 server allocates IPv6 addresses and other network configuration parameters to clients using four-message exchange.

Figure 2 shows the process of address allocation using two-message exchange.

Figure 2 Process of address allocation using two-message exchange

The process of address allocation using two-message exchange is as follows:

  1. A DHCPv6 client sends a Solicit packet carrying the Rapid Commit option, indicating that the DHCPv6 client requires fast address allocation and network configuration parameters from a DHCPv6 server.
  2. After receiving the Solicit message, the DHCPv6 server will process it as follows:
    • If the DHCPv6 server supports fast address allocation, it returns a Reply packet and allocates IPv6 addresses and other network configuration parameters to the DHCPv6 client.
    • If the DHCPv6 server does not support fast address allocation, the DHCPv6 server uses four-message exchange to allocate IPv6 addresses, prefixes, and other network configuration parameters.

DHCPv6 Stateless Autoconfiguration

The IPv6 node obtains network configuration parameters (including configuration parameters of DNS, SIP, and SNTP servers, without IPv6 addresses) through DHCPv6 stateless autoconfiguration.

Figure 3 shows the working process of DHCPv6 stateless autoconfiguration.

Figure 3 Working process of DHCPv6 stateless autoconfiguration

The working process of DHCPv6 stateless autoconfiguration is as follows:

  1. A DHCPv6 client multicasts an Information-Request packet with the Option Request option to DHCPv6 servers. The Option Request option specifies the configuration parameters that the DHCPv6 client needs to obtain from a DHCPv6 server.
  2. After receiving the Information-Request packet, the DHCPv6 server sends a Reply packet to the client in unicast mode. The Reply packet carries the allocated network configuration parameters. The DHCPv6 client performs stateless autoconfiguration based on parameters carried in the Reply packet.
Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
< Previous topic Next topic >