Guest VM Settings Migrator 1.0

Guest VM Settings Migrator Screenshot

If you have used VMware for any length of time, you have probably done a P2V(Physical to Virtual) conversion on a Windows server, to migrate that system into a virtualized environment. If you’ve got specific NIC settings – such as Static IP, DNS, etc. – those have to be recreated on the new virtual NIC. You also have the duty of cleaning up all the non-present hardware of the system after the conversion is finished in order to get respectable boot times, and better stability inside of Windows.

There are a lot of repetitive tasks, so I decided to put all those common commands in a batch script. Things should be self-explanatory but let me know if you have questions. Note: Fully works only on Windows 2003 server

Guest VM Settings Migrator Screenshot

Guest VM Settings Migrator Screenshot

One thing to point out is that the ‘netsh’ utility used in this script refers to the NICs in Windows by their title. So, commonly the title is “Local Area Connection”. Windows will usually increment the title to “Local Area Connection 2” after conversion/upgrade, so you will either need to rename the NIC to it’s original, or modify the file. Using Option 3 on the tool allows you to view the current exported settings.

Also, if you’re looking for some good info on how to do a migration of your Guest VMs from VI 3.5 to vSphere 4.0, Scott Lowe has a great article on his blog for installing all the latest and greatest drivers available from VMware into your Guest VM.

Download Guest VM Settings Migrator

David Markley

Well, I was born to my parents... and did the school thing, and then work. So, pretty standard humanoid setup... :-)

  • Alon

    Hi,

    In order to handle the network connections names you can call the following script before the export and the import process:

    Const NETWORK_CONNECTIONS = &H31&

    strNetConnectionName = “Local Area Connection”
    index = 1

    Set objShell = CreateObject(“Shell.Application”)
    Set objFolder = objShell.Namespace(NETWORK_CONNECTIONS)

    Set colItems = objFolder.Items
    For Each objItem in colItems
    If objItem.Name <> “New Connection Wizard” and objItem.Name <> “Local Area Connection” Then
    objItem.Name = strNetConnectionName
    index = index + 1
    strNetConnectionName = strNetConnectionName & ” ” & index
    End if
    Next

    It will reset the network connection names.

    Regards,
    Alon

  • Alon

    Hi,

    In order to handle the network connections names you can call the following script before the export and the import process:

    Const NETWORK_CONNECTIONS = &H31&

    strNetConnectionName = “Local Area Connection”
    index = 1

    Set objShell = CreateObject(“Shell.Application”)
    Set objFolder = objShell.Namespace(NETWORK_CONNECTIONS)

    Set colItems = objFolder.Items
    For Each objItem in colItems
    If objItem.Name <> “New Connection Wizard” and objItem.Name <> “Local Area Connection” Then
    objItem.Name = strNetConnectionName
    index = index + 1
    strNetConnectionName = strNetConnectionName & ” ” & index
    End if
    Next

    It will reset the network connection names.

    Regards,
    Alon

  • Ivan

    Alon,

    Am i correct in saying that script is great providing you have not renamed your connection originally.

  • Yes, I'm sure that there are ways to make this better, but for the client I was working with at the time, this saved quite a bit of time, and proved a dirt-simple way to have quick access to the common processes used during VM Migration.

  • John

    This is great. Thanks for sharing it !