Jump to content
Welcome to our new Citrix community!
  • 1

Non-persistent DHCPv6 client gets a new IPv6-address at each reboot



We have started to use IPv6-addresses on our VDA's. The IPv6-addresses are assigned by Windows DHCPv6 and the GW and DNS information comes from the router via RA (M and O = flags set to 1). The problem is that each time IPv6 client reboots it seems to get new IPv6-address even though there's still lease time left on DHCPv6. 


In DHCPv6 each client is not recognised by MAC-address, but instead with DUID (DHCP Unique Identifier). Apparently in Windows DUID is created when the DHCP client service starts, and it consists the following:





The DUID value is saved in Windows registry:



The DUID of a DHCPv6 message is generated the first time that the DHCP client service starts. The value of the DUID is stored in the Dhcpv6DUID registry entry. If you delete the value of the registry entry, the value is recreated when an interface is enabled or connected on the client computer. The Dhcpv6DUID registry entry is located under the following registry subkey:




The problem is that when a Non-persistent IPv6 client reboots it removes this registry entry, and the client get's a new DUID which means DHCPv6 will assign it a new IPv6-address. This causes problems to VDA <-> Controller communication/registration. Because of that DHCPv6 also has several entries for same Non-Persistent IPv6 client.


Apparently there are 3 types of DUID's:


Type 1—Link-layer address plus time (DUID-LLT)

Type 2—Vendor-assigned unique ID based on Enterprise Number (DUID-EN)

Type 3—Link-layer address (DUID-LL)



So changing the Windows client DUID type to Type 3 might fix this, but I haven't found a way how to change this in Windows.


Anyone else having this issue?

Link to comment

4 answers to this question

Recommended Posts

  • 1

Feedback from Citrix after 2 months wainting.



We have had some internal investigations and discussion with product team. As per the product manager for MCS, for non-persistent machine catalogs, we don't preserve the DUID as of current design. So the experience on your 2016 OS (deletion of DUID) is an expected behavior. The product management team is planning to check the possibilities to implement the desired result (To preserve DUID) in future. This will be worked as an enhancement request (independent of support ticket). I'll update the enhancement ID by this Monday (Aug 15), which you can use in future to check the progress.


  • Like 1
Link to comment
  • 0
On 10/9/2020 at 10:04 PM, larry lambert said:

We are going through the same thing, finally deploying IPv6, and ran into this same issue.  Were you able to resolve it?


so far I have not found a solution to this. We are running dual-stack Citrix-environment at the moment, which means that the VDA's have both IPv4 and IPv6 addresses. This is not a supported configuration according to Citrix, but it seems to work (check this discussion to learn more: https://discussions.citrix.com/topic/409215-client-ipv4-gateway-vserver-ipv4-vda-ipv6-is-this-possible/)


So at the moment our VDA's register themselves to the controllers using IPv4, but they also receive IPv6-address from DHCPv6 server. Whenever the non-persistent VDA reboots it receives a new IPv6-addresses, but this does not cause problems to the VDA <-> Controller communication anymore because that happens now in IPv4.


Because our DHCPv6 server is part of Active Directory domain it updates the new IPv6-address to DNS. The host AAAA is changed, and also a new PTR record is created. The problem at the moment is that there are several PTR records (tens of them) for the same machine. This is not good.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...