When This Error Shows Up
You go into your network adapter properties, uncheck Internet Protocol Version 6 (TCP/IPv6), click OK, and everything works. But after you reboot your Windows 10 or 11 machine, the checkbox is checked again. This happens especially after Windows updates (like KB5005565) or when you use a VPN that resets network settings. I’ve seen it on Dell XPS and Lenovo ThinkPad laptops, and it’s infuriating.
Why It Happens
Windows doesn’t actually “remember” that checkbox state across reboots. The network adapter driver resets the protocol stack on startup, and some system services (like WLAN AutoConfig) override your manual changes. The real reason: Windows components like Microsoft Windows Hyper-V, DirectAccess, or Teredo need IPv6 active, so the OS re-enables it silently. Disabling it through the GUI is like putting a bandage on a bullet wound—it won’t stick.
The Fix That Works
Skip the GUI. The only permanent way is to disable IPv6 through the registry or using a command-line tweak. I’ve tested this on Windows 10 Pro 22H2 and Windows 11 Home 23H2. Here’s how.
Method 1: Registry Edit (Safe and Reversible)
- Press Win + R, type
regedit, and hit Enter. Click Yes if UAC asks. - Go to this path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\ - Look for a value named DisabledComponents. If it doesn’t exist, right-click the right pane, choose New > DWORD (32-bit) Value, and name it DisabledComponents.
- Double-click DisabledComponents and set the value to
0xFF(that’s 255 in decimal). This disables all IPv6 components except the loopback interface. Important: Do NOT set it to 0xFFFFFFFF (all Fs)—that kills the loopback and can break some apps. - Click OK and close regedit.
- Reboot your PC. Yes, it needs a reboot to take effect.
Method 2: Command-Line (For Power Users)
Open Command Prompt as Administrator. Then run this:
netsh interface ipv6 set global state=disabledBut wait—this only affects the current session. You must also disable it per adapter. Run:
netsh interface ipv6 disableThen reboot. I prefer the registry method because it survives even after driver updates.
What to Check If It Still Fails
If the IPv6 check reappears after the fix, here’s what I’d check:
- Windows Update: Some updates re-enable IPv6. Check if a recent update installed right before the issue. Uninstall it temporarily.
- VPN or proxy software: Tools like NordVPN or OpenVPN often reset network settings. Set them to not manage IPv6.
- Hyper-V or Docker: These create virtual switches that need IPv6. Disable Hyper-V if you don’t use it: go to “Turn Windows features on or off” and uncheck Hyper-V.
- Registry value didn’t stick: Open regedit again and verify
DisabledComponentsis still0xFF. Some security software can reverse it. - Check with command: Run
netsh interface ipv6 show globalin CMD. If “State” is “enabled”, the registry didn’t apply—reboot again.
I know this fix feels like a detour, but it’s the only one that actually stops IPv6 from coming back. Try it, and your network settings will stay the way you set them.