10-28-2012 09:53 PM - edited 03-01-2019 04:51 PM
This is the first document in the document series Implementing DHCPv6. In this we will see how configure Stateful DHCPv6 in Cisco IOS routers.
In Stateful DHCP the adddress assignment is centrally managed and clients must obtain configuration information such as address autoconfiguration and neighbor discovery that is not available through protocols.DHCPv6 can be implemented in two ways : Rapid-Commit and Normal Commit mode.
In Rapid-Commit mode , the DHCP client obtain configuration parameters from the server through a rapid two message exchange (solicit and reply).
In Normal-Commit mode, the DHCP client uses four message exchanges (solicit, advertise, request and reply). By default normal-commit is used.
In order to use the rapid-commit option, it has to be enabled by both client and server so that it uses two-message exchange.
In this configuration example,the router R1 is configured as DHCP server while router R2 is configured as DHCPv6Client.
Note: All configurations are tested in a lab environment involving ASR 1000 series router as DHCP server and Cisco 2800 series router as DHCP Clients.
In Global Configuration Mode
In Interface Configuration Mode
In Global Configuration Mode
In Interface Configuration Mode
DHCPv6 ServerDHCPv6 Client
! | ! version 15.0 ! hostname R2 ! ipv6 unicast-routing ipv6 cef ! interface FastEthernet0/1 no ip address duplex auto speed auto ipv6 address dhcp rapid-commit ipv6 enable ! end |
Note: To configure the DHCPv6 in normal-commit mode, use the same command without "rapid-commit" keyword.Also ensure that you explicitly mention the IPv6 enable command in the client interface because, if it is not not enabled, the client will not send a solicit message.
To display the DHCPv6 pool information, in the DHCPv6 server use this command. The output shows that the number of active clients is 1 and also displays other configuration parameter information, such as domain name server address and preferred life time information.
R1#show ipv6 dhcp pool
DHCPv6 pool: test
Address allocation prefix: 2010:AA01:10::/64 valid 4294967295 preferred 4294967295 (1 in use, 0 conflicts)
DNS server: AAAA:BBBB:10FE:100::15
DNS server: 2010:AA01::15
Domain name: example.com
Active clients: 1
To display the information information about the clients, which includes their DUIDs, IAPDs, prefixes, and preferred and valid lifetimes.
R2#show ipv6 dhcp binding
Client: FE80::C801:88FF:FEAC:1C
DUID: 00030001CA0188AC0000
Username : unassigned
IA NA: IA ID 0x00040001, T1 43200, T2 69120
Address: 2010:AA01:10:0:D16D:EC61:EDCB:8BD1
preferred lifetime INFINITY, , valid lifetime INFINITY,
This command shows that interface Fa0/1 is configured in client mode and also shows the details of the DNS server address and the domain name that it received from the DHCP server.
R2#show ipv6 dhcp interface
FastEthernet1/0 is in client mode
Prefix State is IDLE
Address State is OPEN
Renew for address will be sent in 11:17:16
List of known servers:
Reachable via address: FE80::C800:88FF:FEAC:1C
DUID: 00030001CA0088AC0000
Preference: 0
Configuration parameters:
IA NA: IA ID 0x00040001, T1 43200, T2 69120
Address: 2010:AA01:10:0:D16D:EC61:EDCB:8BD1/128
preferred lifetime INFINITY, valid lifetime INFINITY
DNS server: AAAA:BBBB:10FE:100::15
DNS server: 2010:AA01::15
Domain name: example.com
Information refresh time: 0
Prefix Rapid-Commit: disabled
Address Rapid-Commit: enabled
Routing Information Protocol
Hi Sivagami,
This presentation is extremely wonderful. But just one queury:
Let us assume I use DHCPv6 on a LAN and I successfully obtain an IPv6 address, DNS and domain name. But where is the subnet mask?
Without a subnet mask, how would a PC be able to communicate with other PCs in the LAN [or] be able to communicate outside the LAN? I would appreciate a clarification on this.
Thanks
netops004
The subnet mask is /64
Hi Arnulfo,
DHCPv6 does not carry a subnet mask, so it is assumed to be a /128 by default. If the prefix is advertised via SLAAC, the host will pick up the mask from the router advertisement (RA), which will be a /64 as you mentioned. If the prefix is not advertised via SLAAC, the subnet mask used the host will remain /128.
Regards
I have a 1841 router with 12.4 (15 T) ios . Is this ios not support Stateful ipv6 dhcp. It not show address option in dhcp pool configuration. & stateless dhcp work properly.
Thank you it is very useful but I have a question in a different scenario I want to config one DHCPv6 server using Packet Tracer and with multiple routers the router takes IP addresses from a server and distribute to computers .I have done that with IPv4 using IP helper but in IPv6 there is no Ip helper
I created in local pool but it did not work .
Can you help me to understand .?
Thank you @Sivagami Narayanan
I know I am coming in late to this, and I should really update my IOS, BUT, I have IOS 15.5 on ISR4321 routers, and the address prefix command is an unrecognized command. In your example, it seems you are using IOS 15.0. I don't know why I cannot configure the address prefix in my stateful DHCPv6 pool. Any ideas?
I've seen some examples online where people used the prefix-delegation command to essentially do the same thing, but that too is unavailable to me.
To add to my confusion, in Packet Tracer 8.2.2, the ISR4321 router running version 15.5 of the IOS has both of these commands.
The IOS file on my routers is isr4300-universalk9.03.16.04b.S.155-3.S4b-ext.SPA.bin
The IOS file on the 4321 routers in packet tracer is isr4300-universalk9.03.16.05.S.155-3.S5-ext.SPA.bin
Seems they "corrected" the problem, but I cannot find any documentation to support that. Any help will be welcomed.
Thank you.
Hi @blorkovic ,
Stateful DHCPv6 as been supported for a while. You run a very old version on your ISR4321. I would definitely recommend you upgrade to a more recent level of IOS-XE.
Thank you, @Harold Ritter
I am aware that DHCPv6 has been supported for a long time and that the version on my ISR4321 is old, but I do not understand why my particular version of the IOS does not recognize the commands I mentioned in my previous post. I was looking for some confirmation that I was not crazy.
Regardless, I will be updating to the most recent, stable version of IOS-XE. Thanks again!
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: