P2V fails with error: A general system error occurred

This morning I attempted to kick off a P2V (Physical 2 Virtual) conversion but when reaching the end of the wizard and clicking submit the following error appeared:

A general system error occurred

To identify the potential cause I navigated to the VMware Converter logs found in:

C:\Documents and Settings\All Users\Application Data\VMware\
VMware vCenter Converter Standalone\logs

My search yielded the following error:

[05924 error 'Default'] Found dangling SSL error: [0] 
error:00000001:lib(0):func(0):reason(1)

A quick search on Google found VMware KB article 2002296, which alluded to DNS/domain authentication being the root cause. This was not the case in this instance, name resolution was working fine. Ping and telnet tests also confirmed connectivity to the destination ESX server and the necessary ports (902 & 443). The error indicated that SSL authentication failed. This led  me to check the hosts.allow file on the ESX server and I found that the network I was connecting from had not been given explicit access. I subsequently added the following line by opening up hosts.allow using vi editor:

[root@esx1 ~]# vi /etc/hosts.allow

I then added the following line to the top of the file:

ALL : ALL

This gave all IPs access to all services on this ESX server. Ordinarily this is not good security practice however as the ESX server was within a secure environment it was safe to do this.

I then restarted the network services which committed/effected the change:

[root@esx1 ~]# service network restart
Shutting down interface vswif0:                            [  OK  ]
Shutting down interface vswif1:                            [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface vswif0:                              [  OK  ]
Bringing up interface vswif1:                              [  OK  ]
[root@esx1 ~]#

It is also worth mentioning that you should check the hosts.deny file and comment out any entries that may affect your ability to connect to services hosted on ESX.

I then re-submitted the P2V conversion job and it started running successfully:

If this works for you, remember to revert the hosts.allow file once your P2V work has completed.

Removing Ghost NICs from a Virtual Machine after a P2V

When performing P2V (Physical to Virtual) migrations ‘old’ devices often remain hidden within Device Manager. They generally do not affect the Virtual Machine but can prevent you from assigning or changing IPs on the new vNICs (Virtual NICs). In Windows you will see the following:

The IP address XXX.XXX.XXX.XXX you have entered for this 
network adapter is already assigned to another adapter

To resolve this issue you will need to remove the Ghost or hidden NIC(s) on the system after which you will be able to assign IPs to a vNIC. Unfortunately these Ghost NICs are hidden so to make then visible perform the following steps:

1. Click Start > Run.
2. Type CMD in the Open dialogue box and hit enter.
3. At the command prompt, run this command:

set devmgr_show_nonpresent_devices=1

4. From within the same command prompt box run the following command:

start devmgmt.msc

5. This will load Device Manager. Ensure that you run both commands above in the same Command Prompt box as they must be run within the same environment for this whole process to work, per the screenshot below:

6. Once in Device Manager, click View > Show Hidden Devices:

7. Expand the Network Adapters tree (click the plus sign next to the Network Adapters entry) and you will see the old NICs which appear greyed out:

8. Right-click the old NIC(s), then click Uninstall.
9. Once all of the old NICs are uninstalled you will be able to assign IP addresses to the vNIC.

The steps above are also covered in VMware KB articles 2010145 and 1179.