Today, just when starting the working day we have realized that there were somes servers offline (still powered on but without network connection). It seemed that the network adapters were incorrectly configured without the static IPs.

After some research, a job partner discovered that some days ago (March 13th) Microsoft released some security updates that generates issues to Windows 2008 R2 and Windows 7 VMWare virtualized machines. After installing the patches and rebooting, the virtual network card (vNIC) is hidden and replaced by a new one and without the previous configuration, so those machines affected that were configured with static IP lost network connection.

The updates that causes this issue are KB4088875 and KB4088878

Fast solution

As a fast solution for those critical servers in production that were affected, we had to reconfigure the network manually. This is how the issue leaves the new adapter configured:

When changing to static IP again, this warning is showed. You can ignore it because the same IP is still assigned to the replaced hidden adapter that is not in use anymore. As I said, this is a fast solution, but it would be better to delete the previous adapter:

Preventive solution

For those machines which still have not been affected, the following vbs script can be run ir order to prevent the problem:

Option Explicit
Const HKEY_LOCAL_MACHINE = &H80000002
Dim oReg : Set oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")
Dim oShell : Set oShell = CreateObject("WScript.Shell")
Dim sPath, aSub, sKey, aSubToo, sKeyToo, dwValue, Result, SaveResult
Dim NotDeleted
 
NotDeleted = 0
 
' Get all keys within sPath
sPath = "SYSTEM\CurrentControlSet\Enum\PCI"
oReg.EnumKey HKEY_LOCAL_MACHINE, sPath, aSub
 
' Loop through each key
For Each sKey In aSub
    ' Get all subkeys within the key 'sKey'
    oReg.EnumKey HKEY_LOCAL_MACHINE, sPath & "\" & sKey, aSubToo
    For Each sKeyToo In aSubToo
      Result = oReg.DeleteKey(HKEY_LOCAL_MACHINE, sPath & "\" & sKey & "\" & sKeyToo & "\" & "\Device Parameters" & "\SlotPersistentInfo")
      ' Allow failure only if key never existed
      If (Result = 1) Or (Result > 2) Then
        NotDeleted = 1
        SaveResult = Result
      End If
    Next
Next
 
If (NotDeleted > 0) Then 
  Wscript.Echo "One or more SlotPersistentInfo keys still exist under HKLM\System\CurrentControlSet\Enum\PCI\\\Device Parameters.  Please delete manually. Result = " & Result
End If

It deletes the SlotPersistenceInfo key under HKLM\CurrentControlSet\Enum\PCI\*\*\Device Parameters\
After being executed, you can safely install the patches without suffering the issue.

References

– VMWare blogs: Microsoft Convenience Update, KB4088875 and KB4088878 vNIC Incompatibilities

– Convenience rollup update for Windows 7 SP1 and Windows Server 2008 R2 SP1