About the mechanism of dhcpv6 address refreshment on windows7/windows10
Hello, we are developing a modem router product and we have some issues with updating the dhcpv6 address on win7/win10. After obtaining the IPv6 address prefix from the network side (usually we call it Wan Side), the router uses DHCPv6 protocal to assign an address to the Windows PC(usually we call it Lan Side).
In the past, Windows 7 worked well with routers. After Windows 10 was widely used, we received many feedbacks from users: After the network-side prefix changes (eg. the modem dials up again), the DHCPv6 address of the Windows 10 did not update.
We did further analysis:
When the network-side prefix of the router changes, the router sets the M/O flag to 0 and sets the Router Lifetime to 0 in the RA (Router Advertisement) packet and then notify it to the connected devices (such as Windows PCs) , which indicate that the router is unavailable. Then, the router resets the M/O flag (value:1) in the new RA packet and sets the router lifetime to 1800 (the default value) to notify the device of the new network-side prefix of the router.
When Windows 7 is used, the Windows 7 system re-initiates DHCPv6 requests after receiving two RAs. In this way, after the network-side prefix of the router is updated, Windows 7 updates its own DHCPv6 address. However, this mechanism does not work on Windows 10. As a result, when the router updates the prefix address, Windows does not update the dhcpv6 address. Therefore, windows can not access the Internet with its dhcpv6 address.
The fault persists until the DHCPv6 lease expires. Windows 10 repeatedly requests to renew the lease without any responds, and then trigger a new DHCPv6 solicit. Alternatively, users can manually remove and insert the network cable to rectify the fault. Either way, it's not user-friendly.
So we sincerely want to solve this problem.
1. What modifications have been made in Windows 10? Can you tell us the background or protocol description?
2. How does the router instruct Windows 10 to update the DHCPv6 address, instead of asking users to wait or manually remove and insert the network cable?