Cause
Under certain conditions, you may see this error message from a Windows guest operating system:
The IP address XXX.XXX.XXX.XXX you have entered for this network adapter is already assigned to another adapter Name of adapter. Name of adapter is hidden from the network and Dial-up Connections folder because it is not physically in the computer or is a legacy adapter that is not working. If the same address is assigned to both adapters and they become active, only one of them will use this address. This may result in incorrect system configuration. Do you want to enter a different IP address for this adapter in the list of IP addresses in the advanced dialog box?
In this message, XXX.XXX.XXX.XXX is the IP address you are trying to set and Name of adapter is the name of a network adapter that is present in the registry but hidden in Device Manager.
This error can occur when you change a network connection's TCP/IP configuration from DHCP to a static IP address if:
- You have upgraded VMware virtual network adapters (for example, when you migrate a virtual machine from an older to a new version of VMware software). This can also include updating the virtual machine hardware version and/or upgrading the version of VMware Tools.
- You have added and removed network adapters multiple times.
This issue occurs if a network adapter with the same IP address is in the Windows registry but is hidden in the Device Manager (My Computer > Properties > Hardware > Device Manager). This hidden adapter is called a ghosted network adapter.
- You may see this if you recently performed a P2V and the resulting virtual machine still has the physical NICs and drivers for those NICs present. These ghost NICs have the old IP address and the virtual NIC cannot be assigned the same IP address.
Using the Show hidden devices option in the Device Manager (View > Show hidden devices) does not always show the old virtual NIC (ghosted adapter) to which that IP Address is assigned.
Resolution
To resolve this issue, make the ghosted network adapter visible in the Device Manager and uninstall the ghosted network adapter from the registry:
- Click Start > Run.
- Type cmd and press Enter.
- At the command prompt, run this command:
Note: In Windows 2008 and Windows 7, open the command prompt using the Run as Administrator option.
set devmgr_show_nonpresent_devices=1
Note: If this command does not work (a possibility in Windows Server 2000 and 2003), you may need to add the parameter to Windows and set its value:
- Right-click the My Computer desktop icon and choose Properties.
- Click the Advanced tab and select Environment Variables.
- In the System variables section, click New.
- Set the Variable name to devmgr_show_nonpresent_devices and set the Variable value to 1 to enable the parameter.
- Click OK to add the variable to Windows.
- Start the Device Manager by running this command from the same command prompt:
start devmgmt.msc
- Click View > Show Hidden Devices.
- Expand the Network Adapters tree (click the plus sign next to the Network adapters entry).
- Right-click the dimmed network adapter, then click Uninstall.
- Once all of the grayed out NICs are uninstalled, assign the IP address to the virtual NIC.
Note: To assign the IP address to the virtual NIC on the command line, run the command:
netsh interface ip set address "Local Area Connection #" static IP_Address Subnet_Mask Default_Gateway
For example:
netsh interface ip set address "Local Area Connection 2" static 192.168.1.101 255.255.255.0 192.168.1.1
- Close the Device Manager.
Note: In some Windows versions, a reboot may be necessary to apply the changes.
Resolve issue using DevCon utility
Alternatively, you can also resolve this issue using the DevCon utility. This is a command-line utility that acts as an alternative to Device Manager. When you use DevCon, you can enable, utility disable, restart, update, remove, and query individual devices or groups of devices.
To resolve the issue using DevCon:
- Download the DevCon tool.
- Unpack the 32-bit or 64-bit DevCon tool binary to a local folder.
- Click Start > Run, type cmd, and press Enter.
- Type CD:\path_to_binaries to navigate to where the devcon.exe file is located.
- Use this syntax to find installed network adapters:
devcon findall =net
or
devcon listclass net
Note: In the output of the previous commands, there is a line for the ghosted network adapter that is similar to PCI\.
- Run this command to remove the adapter:
devcon -r remove @device\name
For example:
devcon -r remove "@PCI\VEN_14E4&DEV_1600&SUBSYS_01C21028&REV_02\4&378EDFA4&0&00E2"
Note: IDs that include an ampersand character (&) must be enclosed in quotation marks as seen in the example.
- Reboot the system and you no longer see the ghost network adapters.
Note: If you did not get the Device Instance ID or the OCI name from devcon, search for the adapter name in the registry using Find by clicking Start > Run and typing regedit. Then copy the Device Instance ID for the appropriate adapter. When you locate the device, use the command from Step 6.
For related information, see:
Additional Information
For translated versions of this article, see: