You can adjust this setting pretty easily from powershell.
- Open Powershell as admin and enable scripting
Start powershell as an admin (Hit start, type powershell, right click the icon and select 'run as administrator')
Make sure you have enabled script execution in powershell:
Set-ExecutionPolicy unrestricted
Select 'y' when prompted
- If you only have one active network connection (otherwise skip to 3)
If the connection you want to change from public to private is the only active connection this is simple; use the following commands
net = get-netconnectionprofile
Set-NetConnectionProfile -Name $net.Name -NetworkCategory Private
Go to step 4
- If you have multiple active connections, you can do it this way (in the admin powershell session):
Get-NetConnectionProfile
Copy down the output from that for the NAME field for the connection you want to change, and enter the following command into powershell, with NAME being replaced by the result from the last call. Keep the double quotes in the powershell command. e.g. if the network name was argonautsNet, use "argonautsNet"
Set-NetConnectionProfile -Name "NAME" -NetworkCategory Private
- You can verify that setting 'took' from powershell with this command, look for the ethernet interface you changed (or there will be only one listed if you did it by step 2's instructions)
Get-NetConnectionProfile
If this doesn't work, post the error messages / codes that you receive in the powershell session. This can be done with registry mods as well.
Edit - I am assuming you already tried the standard methods via the settings GUI, etc, which are linked to in comments to your question.