Uninstall Network Connection Options

by nige-b at 2012-12-11 14:12:31


Server 2012 and PowerShell 3.

I want to be able to uninstall for example Link-Layer Topology Discovery Responder and QOS Packet Scheduler.

I can see how to disable for interfaces via Get-NetAdapterBinding but cannot see how to actually disable?

Is this possible via a cmdlet in powershell?

If not is there any other options?


by mikefrobbins at 2012-12-11 20:09:24
Get-NetAdapterBinding -DisplayName 'Link-Layer Topology Discovery Responder', 'QOS Packet Scheduler' | Set-NetAdapterBinding -Enabled $false
by nige-b at 2012-12-12 12:35:45
Thanks but that does not uninstall those components it just disables them …
by nige-b at 2012-12-15 05:47:05
Any idea please?

One minute job in the gui …

Being told by colleagues this is the sort of problem that shows why we will never go to core in the Windows world :frowning:

by mikefrobbins at 2012-12-15 08:33:21
I’m not aware of a way to do this in PowerShell without seriously hacking up the registry. I’m curious to know what are the advantages of uninstalling them over disabling them?

A worse case scenario is to add the GUI to this server core machine, accomplish it in the GUI and then remove the GUI if you want to get back to Server Core. Switching to the GUI and back to Core in 2012 doesn’t require a re-install, although the server will have to be rebooted once the GUI is added or removed.

I’m a huge fan of Server Core and with 2012 you can have the best of both worlds. If you’re a GUI guy (which I’m not), install the GUI version, do all your configuration, and then remove it for a lean and mean server.

Here’s an article by Jeff Hicks on Petri on how to add the GUI and remove it if it comes to that (See the "Server Core to GUI: The PowerShell Way" section):
by nige-b at 2012-12-15 15:18:17

It was a recommendation from Microsoft Premier Support on some of our hardened builds on Server 2008 so just carrying it over to Server 2012.

There are some compliancy issues that we have to adhere to and this is just one of many.

If new interfaces get spun up or re-created we do not want the link layer components to get bound to interfaces.

I know you can drop back to the GUI but I don’t think it’s an acceptable solution from Microsoft to have to do this. I’m trying to sell Server Core & PowerShell to management and this doesn’t help.

I’m not expecting to have built in cmdlets for everything so evem though MS don’t seem to offer cmdlets for some obvious hardening stuff such as disabling NetBIOS (I know you can do it via WMI or registry etc) but there must be some way of doing it without a GUI…

I guess I will just have to go back to Microsoft but thanks for the help.