How to fix access denied error when resetting TCP/IP ?
It is possible to run into "Resetting failed. Access is denied" error when trying to reset/repair TCP/IP and Winsock in Command Prompt, or with the TCP Optimizer. This is related to the correct user owning all the proper registry keys. Note this is only a partial error, most of the reset works anyway.
The error presents itself when typing the command "netsh int tcp reset". Most of the operations are successful, with a small exception at the end, for example:
C:\netsh int tcp reset
Resetting Global, OK!
Resetting Interface, OK!
Resetting Unicast Address, OK!
Resetting Neighbor, OK!
Resetting Path, OK!
Resetting , failed.
Access is denied.
Restart the computer to complete this action
To fix this issue, you need to give ownership rights to a specific Registry key. First, start the Registry Editor, (press win+R keys and type regedit). In the registry, navigate to:
Right-click on it (the "26" key), and give "Full Control" permissions for everyone. It may be a good idea to disable/re-enable the network adapter, or reboot for changes to take effect.
After that, "netsh int tcp reset" should complete without errors.
Note: Even though some TCP/IP parameters still need to be changed via netsh, Microsoft is slowly phasing out netsh in lieu of using PowerShell cmdlets. Depending on the OS build, viewing TCP/IP parameters with "netsh interface tcp show global" may not always agree with the PowerShell variant "Get-NetTCPSetting".