DHCPv6 Behaviour in Windows Vista

Windows Vista introduces support for DHCPv6. The DHCPv6 client implementation in Windows Vista is compliant with RFC 3315. It supports 2 modes of operation: a stateless mode and a stateful mode of operation.

 

DHCPv6 Stateless mode is where the host uses a non-DHCPv6 method to obtain an IPv6 address, and uses DHCPv6 only to obtain other configuration parameters such as the IPv6 address of the DNS server. Typically in this mode, clients will use the IPv6 prefix from a Router Advertisement to auto-configure an IPv6 address for the network interface.

 

DHCPv6 Stateful mode is where a client uses DHCPv6 to obtain an IPv6 address from the DHCPv6 server along with other configuraiton parameters.

 

The DHCPv6 client mode of operation in Windows Vista is controlled by Router Advertisements. When the TCP/IP stack in Windows Vista receives a Media Connect event on a network interface, it sends a Router Solicitation. The Router Advertisement received in response determines the behaviour of the DHCPv6 client on that interface. If both the M & O flags in the Router Advertisement are set, the client assumes that it should DHCPv6 Stateful mode. If the O flag is set, but the M flag is not set, the DHCPv6 client uses the Stateless mode of operation.

 

Hope this helps you get started with deploying IPv6 in Windows Vista.

 

Santosh Chandwani

Windows Enterprise Networking

 

[This posting is provided "AS IS" with no warranties, and confers no rights.]

Comments

  • Anonymous
    January 01, 2003
    In one of my previous posts, I had discussed details about the DHCPv6 client behaviour in Windows Vista

  • Anonymous
    January 01, 2003
    Beta Tester's do LH Server BETA 2 já estão fazendo uso do DHCPv6 Stateless que foi projetado para se

  • Anonymous
    January 01, 2003
    Hey radha, Try the following on your vista machine. In NetShell go to the interface ipv6 prompt, netsh interface ipv6 > set interface <interface number>  advertise=enabled  manageAddress=enabled . Here <interface number> is the name or id of the interface where you want to acquire IP address. Please let me know if you still fave any problem.

  • Anonymous
    January 01, 2003
    DUID is generated only once for a machine. It is global across all adapters. In Vista, Duid is generated on the first adapter connect. It is persistent after that.

  • Anonymous
    January 01, 2003
    In Windows Server codenamed "Longhorn", Microsoft has introduced DHCPv6 functionality to the DHCP server.

  • Anonymous
    January 01, 2003
    Hi, My vista dhcpv6 client is able to get ipv6 address. Is there a command with which I can release or renew ipv6 address? Thanks, Chander

  • Anonymous
    January 01, 2003
    hi Yong, The DUID generated will be unique anyways. Why do you want to predetrmine it and then assign IP address? It is not possible to do DUID-LL in Windows DHCPv6 client.

  • Anonymous
    January 01, 2003
    I am running server 2008 DHCP and have been able to issue IPV6 addresses to Vista Clients. When I run IPconfig on the Vista Client the issued IPV6 appears and the address also appears in server 2008 in the DHCPV6 address leases. However I am unable to connect from the Vista client with the DHCPV6 ip address. What is strange is when I configure a static IPV6 address on that same Vista Client I can now use the DHCPV6 IP address. Any ideas? Aaron

  • Anonymous
    January 01, 2003
    Hi Mukeshkb The issue seems to be Linux router configuration rather than with Windows Dhcp clients, as the same problem is seen with Windows XP and Vista clients. Are the firewall exceptions added for Dhcpv6 in Linux Server ? If not please add them. Also, Is the packet sniff taken on Client or Server? Please check if Dhcpv6 packets are being sent by client, when packets are being captured on client machine. Ravi

  • Anonymous
    January 01, 2003
    Vista DHCPv6 client as well as Windows server 2008 does not support Reconfigure option. Thanks teamdhcp

  • Anonymous
    January 01, 2003
    So the DHCPv6 Server in WS08 does not identify Remote-Identifier(37) option, and hence it is dropping the packet. The issue is resolved in WS08 R2. Please try to disable the Cisco Relay from sending the remote-id option.

  • Anonymous
    January 01, 2003
    Hello Team, Could you confirm the issue reported as MS Connect ID 45620 violates RFC 3646, thus this is a bug of Windows Server 2008? http://connect.microsoft.com/WindowsServerFeedback/feedback/ViewFeedback.aspx?FeedbackID=345620 Regards, Junichiro Hamaguchi

  • Anonymous
    January 01, 2003
    Thanks for your comments. This time i configured the IPV6 Scope and address in the same range. Server address 1000:1000::99/64 Scope:1000:1000::/64 Now i see that Server is replying with an ADVERTISE message for the SOLICIT message from VISTA,but there is no REQUEST message coming from VISTA client. If i replace VISTA with IXIA as DHCPv6 Clients,there is no response from DHCPv6(Windows 2008 Server) server. Is there any other thing that i need to enable on SERVER. Also is there any interoperability issue with IXIA. Please help.Thanks G.Raghu

  • Anonymous
    January 01, 2003
    The Duid is present in following registry key: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6ParametersDhcpv6DUID. By the way in which captures are you seeing for "DUID". All Dhcpv6 packets transmitted by client would have Duid in "ClientID" option. Thanks teamdhcp

  • Anonymous
    January 01, 2003
    DUID is determined the first time any interface is connected or enabled on the machine. This DUID is persistent throughtout then. There is no way to to predetermin ethe DUID. One will either have to read registry key for that purpose or know it through "ipconfig /all".

  • Anonymous
    January 01, 2003
    ipconfig /release6 [<interface>] ipconfig /renew6 [<interface>]

  • Anonymous
    January 01, 2003
    Iam working for Cisco Banglore as a Tester.Presently working on DHCPv6 Relay.As part of that Iam trying Windows  2008 server build 6001 with SP1. Iam using DHCPv6 client as Vista PC & also tried with IXIA. Iam able to see the SOLICIT messages received on the Windows 2008 Server but i do not see any response from the DHCPv6 Server. I tried with other DHCPv6 Server like dibbler.Everything is working fine.& vista is able to get the ipv6 address. iam using only one scope with 1000::/64 prefix in Stateful mode. Can anybody help. G.Raghu

  • Anonymous
    January 01, 2003
    I have a Router (a Linux PC say R-1) which has radvd configured with bit M and O set. (AdvManagedFlag on and AdvOtherConfigFlag on) and dhcp6s is also running here.   I have installed ipv6 on my PC (say PC-2) (Windows XP professional 5.1.2600). I see successful stateless configuration of IPv6 on PC-2(by router adv.) But I don't see successful it sending any DHCPv6 messages on wireshark. even after excuting any of following command

  • ipv6 renew ifIndex      or
  • netsh interface ipv6 set interface ifIndex managedaddress=enabled advertise=enabled
  • Anonymous
    January 01, 2003
    Hey Rasika, You need to run command prompt as an administrator. First he logged on user must have administrator priviledges. Then right click on the command prompt icon and select run as administrator. Thanks Raunak Pandya DHCP Server Team

  • Anonymous
    January 01, 2003
    The Windows DHCP server does NOT listen to the Link Local address of the link. The DHCP server only listens to the bound global unicast address and the DHCP Server related multicast addresses in the links. Can you verify if the DHCP server IP address configured in the relay agent is the Global address which the DHCP server is bound to? If yes, Can you send the packet(s) capture from the relay agent to the server?

  • Anonymous
    January 01, 2003
    Since DHCP client uses Windows LLT-DUID, In order to change the DUID, deleting it will help. New DUID will be generated when any media is connected or enabled after that on the machine.

  • Anonymous
    January 01, 2003
    The comment has been removed

  • Anonymous
    January 01, 2003
    I have a Router (a Linux PC say R-1) which has radvd configured with bit M and O set. (AdvManagedFlag on and AdvOtherConfigFlag on) and dhcp6s is also running here.   I have installed ipv6 on my PC (say PC-2) (Windows XP professional 5.1.2600). I see successful stateless configuration of IPv6 on PC-2(by router adv.) But I don't see successful stateful configuration (by dhcpv6)also it is not sending any DHCPv6 messages (no dhcpv6 appears on wireshark). even after excuting any of following command

  • ipv6 renew ifIndex      or
  • netsh interface ipv6 set interface ifIndex managedaddress=enabled advertise=enabled
  • Anonymous
    January 01, 2003
    There is no configuration required on the DHCP Server in environments where we have DHCP relays. What are the DHCP options being added by the Cisco Relays ?  

  • Anonymous
    January 01, 2003
    Hey Geof, You can check in the UI whether the server is bound to any static IPv6 address or not by right clicking on the server node and Add/Remove Bindings.

  • Anonymous
    January 01, 2003
    What scopes have you configured at the server side? Do you see the Solicit packet on the server side?

  • Anonymous
    January 01, 2003
    Hi Raghu, After replacing with Vista client with IXIA, Could you collect the packet capture at client end as well as at the server end. This will help us to nail down the issue. Thanks, Manu

  • Anonymous
    January 01, 2003
    On the server, check

  1. you have set the bindings for the interface on which you want to serve v6 addresses and whether this matches the configured scope.
  2. If the packet is coming via Relay then check if the link-address field and the scope address match. You can check scope and bindings using netsh/mmc. netsh dhcp server v6 show scope netsh dhcp server v6 show bindings
  • Anonymous
    January 01, 2003
    Appreciate your response. Not sure what is happenening but I am unable to configure that command. I have a interface named 'ipv6'. So at the prompt I tried giving set interface "ipv6" advertise=enabled managedAddress=enabled I get a error  'element not found' I tried all the combinations I could think of (with double quotes, no quotes, =) Nothing seems to help. Is there some place I can look up the configs and the steps needed to setup a Vista dhcpv6 client Just for some background. I am trying to do some interoperability testing between a Vista dhcpv6 client and a Cisco dhcpv6 server.  Connected the 2 machines directly. The connection works fine as I was able to get a v4 address for the vista from the router. But v6 vista client doesn't seem to send a SOLICIT

  • Anonymous
    June 13, 2007
    All, We are currently testing with Longhorn Beta 3 and Vista Business. We are attempting to setup DCHPv6 only with Longhorn. I have set the following M & O  Flags on the Vista Client using the netsh commands, but still have yet to get my Vista client to get a IPv6 address. Is there  something I am missing either on the Server or client side that I have not setup. What would be the basic steps for this configuration to work?

  • Anonymous
    July 02, 2007
    I hope this is the right site to post this question. Is it a normal behavior of Windows Vista not to release the IPv6 address when it is Restarted or during Shutdown?

  • Anonymous
    August 30, 2007
    Hi Steve We are also facing the same issues as your, like to know if you have over come the same. if yes can you please let us know the steps  to resolve.

  • Anonymous
    October 16, 2007
    In what context of netsh do you set the M and O flags for the DHCPv6 Client (Vista)? Also how does one calculate the IPv6 DGW address of the subnet? Are there any How-to's on setting up DHCPv6 on Longhorn? I just got my test lab DC back up on the new RC0 drop this week and would like to see my Vista WS grab an IPv6 address off the DC.

  • Anonymous
    October 16, 2007
    In what context of netsh do you set the M and O flags for the DHCPv6 Client (Vista)? Also how does one calculate the IPv6 DGW address of the subnet? Are there any How-to's on setting up DHCPv6 on Longhorn? I just got my test lab DC back up on the new RC0 drop this week and would like to see my Vista WS grab an IPv6 address off the DC.

  • Anonymous
    February 12, 2008
    How do I configure my Windows Vista machine to acquire a ipv6 address from a DHCPv6 server? Ay special configuration needed ?

  • Anonymous
    February 25, 2008
    I have managed to get Vista to do DHCP requests (Set M/O bits on in the RADV).  I have a Windows Server 2008 eval, build 6001.   I see DHCPv6 solicit messages from the vista machine to ff02::1:2, but I don't see any responses.  The ws2k8 DHCP server shows that it is running. Any debugging tips?

  • g
  • Anonymous
    February 26, 2008
    I see DHCPv6 solicit messages from vista.linklocal(8e16) to ff02::1:2, AND from server2k8.ll(8ced) to ff02::1:2. I don't see any unicast traffic, and only solicit messages. I have one scope in IPv4 (which works) and one scope in IPv6.  The IPv6 scope covers the full 64 bits, based on the subnet prefix. -g

  • Anonymous
    February 26, 2008
    I got it working.  Turns out that I had a dynamically assigned IPv6 address. I had tried to make it static.  I'm guessing that if you take the dynamically assigned address and set it as a static address, that somehow the system doesn't register this as a static address.  At least this is what seemed to happen to me.  Perhaps you can't configure a globally significant host number as a static IPv6 address? When I set the static address to be prefix::200, it took and DHCPv6 started to work. It would be nice if DHCPv6 had some kind of signal in the UI or logs that indicated this. Thanks for your help. -g

  • Anonymous
    May 22, 2008
    I configured my Windows Vista machine to acquire a ipv6 address from a DHCPv6 server. Tried the following on my vista machine. In NetShell went to the interface ipv6 prompt, netsh interface ipv6 > set interface "Local area connection"  advertise=enabled  manageAddress=enabled . but i got an message as bellow. "the requested operation requires elevation" Please reply me sooner possible.

  • Anonymous
    March 12, 2009
    Hi, I am trying to do stateful DHCPv6 with Windows 2008 server being a DHCP client.  I need to pre-configure the Windows Server's fixed IP address on the DHCP server before bringing up windows.  In case of v4, I can assign IP address based on MAC address.  For DHCPv6, I would use DUID.  However, it seems that windows 2008 use DUID-LLT which cannot be predetermined.  Any suggestion how to make IPv6 address assignment work in such case?  Is it possible to do DUID-LL instead? The use case is that I do one windows 2008 installation and create a disk image.  The image will then be replicated to other server all running the same software but using different IP. Thanks, Yong

  • Anonymous
    March 13, 2009
    The comment has been removed

  • Anonymous
    March 17, 2009
    Hello Team, Does Vista DHCPv6 client support the "Reconfigure" option? And how about Windows server 2008? Thanks.

  • Anonymous
    March 31, 2009
    Hello Team, is there any way to know the actual DUID of Vista? (I can't find with ipconfig /all command...) I see it in the router debug, but I can't see in the wireshark capture. Thanks Tamás

  • Anonymous
    May 12, 2009
    The comment has been removed

  • Anonymous
    May 12, 2009
    Thanks for replying, The original message from vista pc, contains Elapsed-Time(8)/Client-Identifier(1)/Vendor-Class(16)/Option-Request(6) options, are encapsulated in Relay-Message(9) option. Plus, Interface-Identifier(18) and Remote-Identifier(37) options are added by cisco relay.

  • Anonymous
    July 31, 2009
    We have discovered a number of Vista machines with Identical DUIDs.  Presumably they are the result of some sort of cloning/imaging. How can we change the DUID on these machines?  Can we simply delete the HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6ParametersDhcpv6DUID value?

  • Anonymous
    December 30, 2009
    Hi all I try to use dhcpv6 server (stateless)in windows 2008 r2 with windows vista. But I find something differences 1.when I use vista without any service pack ,then I can ping to server ,check routing table ,vista will add a routing for dhcpv6 prefix. 2.when I use vista with sp2 or windows 7 ping to server will fail, because client will not add a routing for me is this a bug for client ?