IPV6 DHCP Server configuration on a Cisco device is very similar to a normal, IPV4 configuration, but there is a big difference that you will want to make sure to not miss. Everything can be broken down into the following three steps:
- Create the IPV6 DHCP Pool
- Configure \ Apply the pool to an interface
- Configure the clients for DHCP.
I do want to call out that this is a basic server configuration and that the understanding of stateful and stateless IPV6 DHCP configuration is the next level of this. This configuration is meant to be able to get a basic working lab established for instance.
Create the IPV6 DHCP Pool
Creating the pool is very similar to an IPV4 DHCP pool. This is straight forward and pretty simple once you select a subnet to use.
SERVER(config)#ipv6 dhcp pool TRTLab SERVER(config-dhcpv6)#address prefix 2001:ABAB:CDCD::/100 SERVER(config-dhcpv6)#dns-server 2001:AAAA:BBBB:CC:DD::1 SERVER(config-dhcpv6)#domain-name lab.theroutingtable.com
That is a basic form of a DHCP pool and what it would look like.
Configure \ Apply the pool to an interface
We created the pool, next we need to enable this for use. We will want to use it on interface e0/0 of the Server in our lab, as seen above. There are two ways to do this. First you select the interface for configuration and then use the following command:
SERVER(config)#int e0/0 SERVER(config-if)#ipv6 dhcp server ? WORD Name of IPv6 DHCP pool automatic Automatically find pool
You can use either option here to enable your DHCP pool on that interface and in this case, we will explicitely select our pool:
SERVER(config-if)#ipv6 dhcp server TRTLab
Configure the clients for DHCP
Lastly, we need to enable DHCP on the interface e0/0 of the Client. Again, very few commands needed for this step:
CLIENT(config)#int e0/0 CLIENT(config-if)#ipv6 enable CLIENT(config-if)#ipv6 address dhcp
At this point, we can run a few show commands on each device to verify that an address was received from the newly created pool.
CLIENT#sh ipv6 int br Ethernet0/0 [up/up] FE80::A8BB:CCFF:FE00:100 2001:ABAB:CDCD::2B4:721F Ethernet0/1 [administratively down/down] unassigned Ethernet0/2 [administratively down/down] unassigned Ethernet0/3 [administratively down/down] unassigned Tunnel0 [up/up] FE80::A8BB:CCFF:FE00:100 unnumbered (Ethernet0/0) CLIENT# SERVER#sh ipv6 dhcp binding Client: FE80::A8BB:CCFF:FE00:100 DUID: 00030001AABBCC000100 Username : unassigned VRF : default IA NA: IA ID 0x00030001, T1 43200, T2 69120 Address: 2001:ABAB:CDCD::2B4:721F preferred lifetime 86400, valid lifetime 172800 expires at Mar 27 2018 07:17 PM (172645 seconds) SERVER# SERVER#sh ipv6 dhcp interface Ethernet0/0 is in server mode Using pool: TRTLab Preference value: 0 Hint from client: ignored Rapid-Commit: disabled SERVER#sh ipv6 dhcp pool DHCPv6 pool: TRTLab Address allocation prefix: 2001:ABAB:CDCD::/100 valid 172800 preferred 86400 (1 in use, 0 conflicts) DNS server: 2001:AAAA:BBBB:CC:DD::1 Domain name: lab.theroutingtable.com Active clients: 1 SERVER#
Everything is pretty straight forward and it’s one of those topics to be aware of for sure and make some notes on if that helps you remember it. Not a difficult topic to cover though. If your personal lab testing IPV6 DHCP server configuration has any issues, comment below!