DHCPv6 Repackaging

Last Updated: December 3, 2012

The Dynamic Host Configuration Protocol for IPv6 (DHCPv6) repackaging feature consists of DHCPv6 individual address assignment and stateless DHCPv6.

The DHCPv6 Individual Address Assignment feature manages nonduplicate address assignment in the correct prefix based on the network where the host is connected.

The stateless DHCPv6 feature allows DHCPv6 to be used for configuring a node with parameters that do not require a server to maintain any dynamic state for the node.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Information About DHCPv6 Repackaging

DHCPv6 Prefix Delegation

The IPv6 Access Services--DHCPv6 Prefix Delegation feature can be used to manage link, subnet, and site addressing changes. Dynamic Host Configuration Protocol for IPv6 (DHCPv6) can be used in environments to deliver stateful and stateless information, which are defined as follows:

  • Stateful prefix delegation--Address assignment is centrally managed and clients must obtain configuration information such as address autoconfiguration and neighbor discovery that is not available through protocols.
  • Stateless prefix delegation--Stateless configuration parameters do not require a server to maintain any dynamic state for individual clients, such as Domain Name System (DNS) server addresses and domain search list options.

Extensions to DHCPv6 also enable prefix delegation, through which an ISP can automate the process of assigning prefixes to a customer for use within the customer's network. The prefix delegation occurs between a provider edge (PE) device and customer premises equipment (CPE) using the DHCPv6 prefix delegation option. Once the ISP has delegated prefixes to a customer, the customer may further subnet and assign prefixes to the links in the customer's network.

Node Configuration Without Prefix Delegation

Stateless Dynamic Host Configuration Protocol for IPv6 (DHCPv6) allows the DHCPv6 to be used for configuring a node with parameters that do not require a server to maintain any dynamic state for the node. The use of stateless DHCPv6 is controlled by router advertisement (RA) messages that are multicast by devices. The DHCPv6 client invokes stateless DHCPv6 when it receives an RA. The DHCPv6 server responds to a stateless DHCPv6 request with configuration parameters, such as the Domain Name System (DNS) servers and domain search list options.

DHCPv6 Address Assignment

Dynamic Host Configuration Protocol for IPv6 (DHCPv6) enables DHCP servers to pass configuration parameters, such as IPv6 network addresses, to IPv6 clients. The DHCPv6 Individual Address Assignment feature manages nonduplicate address assignment in the correct prefix based on the network where the host is connected. Assigned addresses can be from one or multiple prefix pools. Additional options, such as the default domain and Domain Name System (DNS) name-server address, can be passed back to the client. Address pools can be assigned for use on a specific interface or on multiple interfaces, or the server can automatically find the appropriate pool.

How to Configure DHCPv6 Repackaging

Configuring DHCPv6 Address Assignment

Prerequisites for Configuring DHCPv6 Address Assignment

By default, no Dynamic Host Configuration Protocol for IPv6 (DHCPv6) features are configured on the device.

When you configure DHCPv6 address assignment, remember that the specified interface must be one of these Layer 3 interfaces:

  • Switch virtual interface (SVI): a VLAN interface created when you enter the interface vlan vlan-id command.
  • EtherChannel port channel in Layer 3 mode: a port-channel logical interface created when you enter the interface port-channel port-channel-number command.

Enabling the DHCPv6 Server Function on an Interface

Perform this task to enable the Dynamic Host Configuration Protocol for IPv6 (DHCPv6) server function on an interface. Note that to delete a DHCPv6 pool, you must use the no ipv6 dhcp pool poolname global configuration command. Use the no form of the DHCP pool configuration mode commands to change the DHCPv6 pool characteristics. To disable the DHCPv6 server function on an interface, use the no ipv6 dhcp server interface configuration command.

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    ipv6 dhcp pool poolname

4.    address prefix ipv6-prefix [lifetime {valid-lifetime preferred-lifetime | infinite}]

5.    link-address ipv6-prefix

6.    vendor-specific vendor-id

7.    suboption number {address ipv6-address | ascii ascii-string | hex hex-string}

8.    exit

9.    exit

10.    interface type number

11.    ipv6 dhcp server [poolname | automatic] [rapid-commit] [preference value] [allow-hint]

12.    end

13.   Do one of the following:

  • show ipv6 dhcp pool
  • show ipv6 dhcp interface

14.    copy running-config startup-config


DETAILED STEPS
  Command or Action Purpose
Step 1
enable


Example:

Device> enable

 

Enables privileged EXEC mode.

  • Enter your password if prompted.
 
Step 2
configure terminal


Example:

Device(config)# configure terminal

 

Enters global configuration mode.

 
Step 3
ipv6 dhcp pool poolname


Example:

Device(config)# ipv6 dhcp pool engineering

 

Enters DHCP for IPv6 pool configuration mode, and defines the name of the IPv6 DHCP pool.

 
Step 4
address prefix ipv6-prefix [lifetime {valid-lifetime preferred-lifetime | infinite}]


Example:

Device(config-dhcpv6)# address prefix 2001:1000::0/64 lifetime infinite

 

(Optional) Specifies an address prefix for address assignment.

  • This address must be in hexadecimal, using 16-bit values between colons.
  • lifetime valid-lifetime preferred-lifetime--Specifies a time interval (in seconds) that an IPv6 address prefix remains in the valid state.
 
Step 5
link-address ipv6-prefix


Example:

Device(config-dhcpv6)# link-address 2001:1001::0/64

 

(Optional) Specifies a link-address IPv6 prefix.

  • When an address on the incoming interface or a link address in the packet matches the specified IPv6 prefix, the server uses the configuration information pool.
 
Step 6
vendor-specific vendor-id


Example:

Device(config-dhcpv6)# vendor-specific 9

 

(Optional) Enters DHCPv6 vendor-specific configuration mode with the vendor-specific identification number.

 
Step 7
suboption number {address ipv6-address | ascii ascii-string | hex hex-string}


Example:

Device(config-dhcpv6-vs)# suboption 1 address 1000:235D::1

 

(Optional) Enters a vendor-specific suboption number.

 
Step 8
exit


Example:

Device(config-dhcpv6-vs)# exit

 

Returns to DHCP pool configuration mode.

 
Step 9
exit


Example:

Device(config-dhcpv6)# exit

 

Returns to global configuration mode.

 
Step 10
interface type number


Example:

Device(config)# interface fastethernet 0/0

 

Enters interface configuration mode, and specifies the interface to configure.

 
Step 11
ipv6 dhcp server [poolname | automatic] [rapid-commit] [preference value] [allow-hint]


Example:

Device(config-if)# ipv6 dhcp server rapid-commit

 

Enables the DHCPv6 server function on an interface.

 
Step 12
end


Example:

Device(config-if)# end

 

Returns to privileged EXEC mode.

 
Step 13
Do one of the following:
  • show ipv6 dhcp pool
  • show ipv6 dhcp interface


Example:

Device# show ipv6 dhcp pool

 

Verifies DHCPv6 pool configuration or verifies that the DHCPv6 server function is enabled on an interface.

 
Step 14
copy running-config startup-config


Example:

Device# copy running-config startup-config

 

(Optional) Saves your entries in the configuration file.

 

Enabling the DHCPv6 Client Function on an Interface

Perform this task to enable the Dynamic Host Configuration Protocol for IPv6 (DHCPv6) client function on an interface. To disable the DHCPv6 client function, use the no ipv6 address dhcp interface configuration command. To remove the DHCPv6 client request, use the no ipv6 address dhcp client request vendor interface configuration command.

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    interface type number

4.    ipv6 address dhcp [rapid-commit]

5.    ipv6 address dhcp client request vendor

6.    end

7.    show ipv6 dhcp interface


DETAILED STEPS
  Command or Action Purpose
Step 1
enable


Example:

Device> enable

 

Enables privileged EXEC mode.

  • Enter password if prompted.
 
Step 2
configure terminal


Example:

Device# configure terminal

 

Enters global configuration mode.

 
Step 3
interface type number


Example:

Device(config)# interface fastethernet 0/0

 

Enters interface configuration mode, and specifies the interface to configure.

 
Step 4
ipv6 address dhcp [rapid-commit]


Example:

Device(config-if)# ipv6 address dhcp rapid-commit

 

Enables the interface to acquire an IPv6 address from the DHCPv6 server.

 
Step 5
ipv6 address dhcp client request vendor


Example:

Device(config-if)# ipv6 adress dhcp client request vendor

 

(Optional) Enables the interface to request the vendor-specific option.

 
Step 6
end


Example:

Device(config-if)# end

 

Returns to privileged EXEC mode.

 
Step 7
show ipv6 dhcp interface


Example:

Device# show ipv6 dhcp interface

 

Verifies that the DHCPv6 client is enabled on an interface.

 

Configuring the Stateless DHCPv6 Function

The server maintains no state related to clients; for example, no prefix pools and records of allocation are maintained. Therefore, this function is "stateless" DHCPv6.

Configuring the Stateless DHCPv6 Server

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    ipv6 dhcp pool poolname

4.    dns-server ipv6-address

5.    domain-name domain

6.    exit

7.    interface type number

8.    ipv6 dhcp server poolname [rapid-commit] [preference value] [allow-hint]

9.    ipv6 nd other-config flag

10.    end


DETAILED STEPS
  Command or Action Purpose
Step 1
enable


Example:

Device> enable

 

Enables privileged EXEC mode.

  • Enter your password if prompted.
 
Step 2
configure terminal


Example:

Device# configure terminal

 

Enters global configuration mode.

 
Step 3
ipv6 dhcp pool poolname


Example:

Device(config)# ipv6 dhcp pool dhcp-pool

 

Configures a Dynamic Host Configuration Protocol for IPv6 (DHCPv6) configuration information pool and enters DHCPv6 pool configuration mode.

 
Step 4
dns-server ipv6-address


Example:

Device(config-dhcp)# dns-server 2001:DB8:3000:3000::42

 

Specifies the Domain Name System (DNS) IPv6 servers available to a DHCPv6 client.

 
Step 5
domain-name domain


Example:

Device(config-dhcp)# domain-name example.com

 

Configures a domain name for a DHCPv6 client.

 
Step 6
exit


Example:

Device(config-dhcp)# exit

 

Exits DHCPv6 pool configuration mode, and returns the device to global configuration mode.

 
Step 7
interface type number


Example:

Device(config)# interface serial 3

 

Specifies an interface type and number, and places the device in interface configuration mode.

 
Step 8
ipv6 dhcp server poolname [rapid-commit] [preference value] [allow-hint]


Example:

Device(config-if)# ipv6 dhcp server dhcp-pool

 

Enables DHCPv6 on an interface.

 
Step 9
ipv6 nd other-config flag


Example:

Device(config-if)# ipv6 nd other-config flag

 

Sets the "other stateful configuration" flag in IPv6 router advertisements (RAs).

 
Step 10
end


Example:

Device(config-if)# end

 

Returns to privileged EXEC mode.

 

Configuring the Stateless DHCPv6 Client

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    interface type number

4.    ipv6 address autoconfig [default]

5.    end


DETAILED STEPS
  Command or Action Purpose
Step 1
enable


Example:

Device> enable

 

Enables privileged EXEC mode.

  • Enter your password if prompted.
 
Step 2
configure terminal


Example:

Device# configure terminal

 

Enters global configuration mode.

 
Step 3
interface type number


Example:

Device(config)# interface serial 3

 

Specifies an interface type and number, and places the device in interface configuration mode.

 
Step 4
ipv6 address autoconfig [default]


Example:

Device(config-if)# ipv6 address autoconfig

 

Enables automatic configuration of IPv6 addresses using stateless autoconfiguration on an interface and enables IPv6 processing on the interface.

 
Step 5
end


Example:

Device(config-if)# end

 

Returns to privileged EXEC mode.

 

Enabling Processing of Packets with Source Routing Header Options

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    ipv6 source-route

4.    end


DETAILED STEPS
  Command or Action Purpose
Step 1
enable


Example:

Device> enable

 

Enables privileged EXEC mode.

  • Enter your password if prompted.
 
Step 2
configure terminal


Example:

Device# configure terminal

 

Enters global configuration mode.

 
Step 3
ipv6 source-route


Example:

Device(config)# ipv6 source-route

 

Enables processing of the IPv6 type 0 routing header.

 
Step 4
end


Example:

Device(config)# end

 

Returns to privileged EXEC mode.

 

Configuration Examples for DHCPv6 Repackaging

Examples: Configuring the DHCPv6 Server Function

In the following example, Dynamic Host Configuration Protocol for IPv6 (DHCPv6) clients are connected to the DHCPv6 server on Ethernet interface 0/0. The server is configured to use parameters from the DHCP pool called dhcp-pool. This pool provides clients with the IPv6 address of a Domain Name System (DNS) server and the domain name to be used. It also specifies that prefixes can be delegated from the prefix pool called client-prefix-pool1. The prefixes delegated will have valid and preferred lifetimes of 1800 and 600 seconds, respectively. The prefix pool named client-prefix-pool1 has a prefix of length /40 from which it will delegate (sub) prefixes of length /48.

ipv6 dhcp pool dhcp-pool
 prefix-delegation pool client-prefix-pool1 lifetime 1800 600
 dns-server 2001:DB8:3000:3000::42
 domain-name example.com
!
interface Ethernet 0/0
 description downlink to clients
 ipv6 address FEC0:240:104:2001::139/64
 ipv6 dhcp server dhcp-pool
!
ipv6 local pool client-prefix-pool1 2001:DB8:1200::/40 48

The following example from the show ipv6 dhcp command shows the DHCP unique identifier (DUID) of the device:

Device# show ipv6 dhcp 

This device's DHCPv6 unique identifier(DUID): 000300010002FCA5DC1C

In the following example, the show ipv6 dhcp binding command shows information about two clients, including their DUIDs, IAPDs, prefixes, and preferred and valid lifetimes:

Device# show ipv6 dhcp binding

Client: FE80::202:FCFF:FEA5:DC39 (Ethernet2/1)
  DUID: 000300010002FCA5DC1C
  IA PD: IA ID 0x00040001, T1 0, T2 0
    Prefix: 3FFE:C00:C18:11::/68
            preferred lifetime 180, valid lifetime 12345
            expires at Nov 08 2002 02:24 PM (12320 seconds)
Client: FE80::202:FCFF:FEA5:C039 (Ethernet2/1)
  DUID: 000300010002FCA5C01C
  IA PD: IA ID 0x00040001, T1 0, T2 0
    Prefix: 3FFE:C00:C18:1::/72
            preferred lifetime 240, valid lifetime 54321
            expires at Nov 09 2002 02:02 AM (54246 seconds)
    Prefix: 3FFE:C00:C18:2::/72
            preferred lifetime 300, valid lifetime 54333
            expires at Nov 09 2002 02:03 AM (54258 seconds)
    Prefix: 3FFE:C00:C18:3::/72
            preferred lifetime 280, valid lifetime 51111

In the following example, the show ipv6 dhcp database command provides information on the binding database agents TFTP, NVRAM, and flash:

Device# show ipv6 dhcp database 

Database agent tftp://172.19.216.133/db.tftp:
  write delay: 69 seconds, transfer timeout: 300 seconds
  last written at Jan 09 2003 01:54 PM,
     write timer expires in 56 seconds
  last read at Jan 06 2003 05:41 PM
  successful read times 1
  failed read times 0
  successful write times 3172
  failed write times 2
Database agent nvram:/dhcpv6-binding:
  write delay: 60 seconds, transfer timeout: 300 seconds
  last written at Jan 09 2003 01:54 PM,
     write timer expires in 37 seconds
  last read at never
  successful read times 0
  failed read times 0
  successful write times 3325
  failed write times 0
Database agent flash:/dhcpv6-db:
  write delay: 82 seconds, transfer timeout: 3 seconds
  last written at Jan 09 2003 01:54 PM,
    write timer expires in 50 seconds
  last read at never
  successful read times 0
  failed read times 0
  successful write times 2220
  failed write times 614

Example: Configuring the DHCPv6 Client Function

In the following example, this Dynamic Host Configuration Protocol for IPv6 (DHCPv6) client has three interfaces. Ethernet interface 0/0 is the upstream link to a service provider, which has a DHCPv6 server function enabled. The Fast Ethernet interfaces 0/0 and 0/1 are links to local networks.

The upstream interface, Ethernet interface 0/0, has the DHCPv6 client function enabled. Prefixes delegated by the provider are stored in the general prefix called prefix-from-provider.

The local networks, Fast Ethernet interfaces 0/0 and 0/1, both assign interface addresses based on the general prefix called prefix-from-provider. The bits on the left of the addresses come from the general prefix, and the bits on the right of the addresses are specified statically.

interface Ethernet 0/0
 description uplink to provider DHCP IPv6 server
 ipv6 dhcp client pd prefix-from-provider
!
interface FastEthernet 0/0
 description local network 0
 ipv6 address prefix-from-provider ::5:0:0:0:100/64
!
interface FastEthernet 0/1
 description local network 1
 ipv6 address prefix-from-provider ::6:0:0:0:100/64

Example: Configuring the Stateless DHCPv6 Function

The following example shows how to use the Dynamic Host Configuration Protocol for IPv6 (DHCPv6) function to configure clients with information about the name lookup system. The server is configured with a DHCP pool, which contains the name lookup information that is to be passed to clients. It does not need to contain a prefix pool. This DHCP pool is attached to the access link to customers (Ethernet 0/0) when you enter the ipv6 dhcp server command. The access link also has the ipv6 nd other-config-flag command enabled. Router advertisement (RA) messages sent from this interface inform clients that they should use DHCPv6 for "other" (for example, nonaddress) configuration information.

ipv6 dhcp pool dhcp-pool
 dns-server 2001:DB8:A:B::1
 dns-server 2001:DB8:3000:3000::42
 domain-name example.com
!
interface Ethernet 0/0
 description Access link down to customers
 ipv6 address 2001:DB8:1234:42::1/64
 ipv6 nd other-config-flag
 ipv6 dhcp server dhcp-pool

The client has no obvious DHCPv6 configuration. However, the ipv6 address autoconfig command on the uplink to the service provider (Ethernet 0/0) causes the following two events:

  • Addresses are autoconfigured on the interface, based on prefixes in RA messages received from the server.
  • If received RA messages have the "other configuration" flag set, the interface attempts to acquire the other (for example, nonaddress) configuration from any DHCPv6 servers.

Additional References

Related Documents

Related Topic Document Title

IPv6 addressing and connectivity

IPv6 Configuration Guide

Cisco IOS commands

Cisco IOS Master Command List, All Releases

IPv6 commands

Cisco IOS IPv6 Command Reference

Cisco IOS IPv6 features

Cisco IOS IPv6 Feature Mapping

Standards and RFCs

Standard/RFC Title

RFCs for IPv6

IPv6 RFCs

Technical Assistance

Description Link

The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html

Feature Information for DHCPv6 Repackaging

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Table 1 Feature Information for DHCPv6 Repackaging
Feature Name Releases Feature Information

DHCPv6 Repackaging

12.2(33)SRE

12.2(50)SE

15.0(1)EX

The Dynamic Host Configuration Protocol for IPv6 (DHCPv6) repackaging feature consists of DHCPv6 individual address assignment and stateless DHCPv6.

The DHCPv6 Individual Address Assignment feature manages nonduplicate address assignment in the correct prefix based on the network where the host is connected.

The stateless DHCPv6 feature allows DHCPv6 to be used for configuring a node with parameters that do not require a server to maintain any dynamic state for the node.

The following commands were introduced or modified: address prefix, dns-server, domain-name, ipv6 address autoconfig, ipv6 dhcp pool, ipv6 dhcp server, ipv6 nd other-config-flag, ipv6 source-route, link-address, show ipv6 dhcp interface, show ipv6 dhcp pool, suboption, vendor-specific.

Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)

Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.

© 2012 Cisco Systems, Inc. All rights reserved.