Jonathan's Virtual Blog

System Center Virtual Machine Manager and Orchestrator - Solutions and Guidance


 Jonathan's Virtual Blog

   Virtual Machine Manager - Orchestrator - Solutions and Guidance

  • TCP/IP Conflict with Ghosted NIC: Legacy to Synthetic NIC

    Plug Ethernet Cat-5 wired high speed broadbandAs far back as Windows 95 there has been the problem of more than one NIC with the same IP address. Simply, you cannot should not do this. Most often this is seen when a computer has a static IP assigned to a NIC, then that NIC is removed (physical or virtual) and replaced with another. You could run into this situation now if you upgrade your Legacy NICs in Hyper-V (SCVMM) with Synthetic ones… providing greater throughput and less overhead on the host server. When you make this replacement and enter the same IP address as the old NIC had you run into one of the errors below.

    You can click ‘No’ and continue… and you will have problems. Or, you can somehow get rid of the old NIC that no longer shows up but is somehow causing an IP conflict. You don’t see the old NIC but it is conflicting with your new one?! You have a ghosted NIC.

    I mentioned that this type of issue has been around a while. So has the solution. I have used the article below since at least 1998. It has been updated recently with a ‘Fix it’ button, but the content and solution are the same. Click the linked title below.

    KB 269155: Error message when you try to set an IP address on a network adapter

    Error message when you try to set an IP address on a network adapter

    http://support.microsoft.com/kb/269155#

    There are two methods. The first is worth a try. It may work. The second, Method 2, is the one I have always used because it always works. Caution: you really can rip out a component you need. Luckily, performing this operation is easy, and any real NIC (or virtual) you remove will be added back on next reboot if still installed. The new ‘Fix it’ on the page I have never tried. Tell me your experience in the comments below.

    Using Method 2

    First, you need ‘devcon.exe.’ They quit shipping this in the product so you will need to download it from the link below. You may get a message about running it in Windows 2008 R2… ignore it.

    Windows Server 2003 Resource Kit Tools

    http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17657

    To make this correction on a virtual machine you need to tweak the syntax just a bit.

    With a physical machine you would type:

    devcon -r remove "@PCI\VEN_10B7&DEV_9200&SUBSYS_00D81028&REV_78\4&19FD8D60&0&58F0"

    With a virtual machine change it to something like this:

    devcon -r remove "@VMBUS\…”

    Here’s the step by step…

    Change to the ‘C:\Program Files\Support Tools>’ or wherever ‘devcon.exe’ lives.

    Type ‘devcon findall =net’ to list all NICs (yes, there is a space before the ‘=’)

    Identify from the list of NICs the virtual ones. Match the name of the NIC to what used to show up in Network Settings.

    Add an ‘@’ sign in front of the NIC information and enclose the who thing in quotes.

    Hit Enter and remove the NIC. You will see that the device is removed.

    Reboot and assign your new NIC the IP address the old one had. Easy.

     

     

    jonjor

  • VM does not Boot Following P2V or Disk2VHD

    So you perform a successful P2V using SCVMM. Or perhaps you use it’s cousin, ‘Disk2VHD’ from Sysinternals. All is well until you boot the new VM… FAILURE. For those situations where you simply get a black screen, maybe with a blinking cursor but definitely no Windows load, I have some solutions. (If you are experiencing a blue screen this article is not for you).

    First! Do not fear the black screen. It simply means the path to load Windows cannot be found by the boot loader. This may be due to the boot loader, or it may be due to the MBR or Boot Sector. Let’s just say we aren’t concerned with all of the technicalities and want to fix it. Here’s how.

     

     

    Windows 2008 R2 (Vista, Windows 7, Windows 2008)

    We’re going to fix the entire boot path, despite what part of it is broken. Go find an ISO or DVD of any of the operating systems just listed in the title. Prepare to boot your VM from this media. We’re going to use the recovery console. We’ll assume you are using Windows 7 media.

    1. Attach the Windows 7 installation disc to the virtual machine disc drive, and then start the computer.
    2. Press a key when you are prompted.
    3. Select a language, a time, a currency, a keyboard or an input method, and then click Next.
    4. Click Repair your computer.
    5. Click the operating system that you want to repair, and then click Next.
    6. In the System Recovery Options dialog box, click Command Prompt.
      1. If an operating system is not found simply continue anyway
    7. Type the following command in this order to set your system straight:
      1. bootrec /fixmbr    (Fixes MBR)
      2. bootrec /fixboot   (Fixes Boot Sector)
      3. bootrec /scanos    (Scans for Windows installations to add)
      4. Reboot! (Type Exit)
    8. If you still do not boot into Windows, or do not have a boot menu, or something is still wrong, follow steps 1 – 6 again. For step 7 type this instead
      1. bootrec /rebuildbcd    (Rebuilds entire BCD… not a really big deal)
      2. Reboot! (type Exit)

    You are now either booting into Windows, or you are not… Any blue screens I cannot help you with at this time. Search the internet for a solution, and in the meantime I intend to write an article on this as well. Comments welcome as always.

    Further Information:

    How to use the Bootrec.exe tool in the Windows Recovery Environment to troubleshoot and repair startup issues in Windows
    http://support.microsoft.com/kb/927392

    Windows 2003 R2 (Windows XP, Windows 2003)

    Again, we’re off to fix the boot path. Things are a bit different in Windows 2003. Same basic goal as with Windows 2008. Go find an ISO or DVD of any of the operating systems just listed in the title. Prepare to boot your VM from this media. We’re going to use the recovery console. We’ll assume you are using Windows 2003 media.

    1. Attach the Windows 2003 installation disc to the virtual machine disc drive, and then start the computer.
    2. When you receive the message that prompts you to press any key to start from the CD, press a key to start the computer from the Windows Server 2003 CD.
    3. When the Welcome to Setup screen appears, press the R key to start the Recovery Console.
    4. Select the Windows installation that you must access from the Recovery Console.
    5. Follow the instructions that appear on the screen, type the Administrator password, and then press ENTER.
    6. Type the following command in this order to set your system straight:
        1. fixmbr (Fixes MBR)
        2. fixboot (Fixes Boot Sector)
        3. bootcfg /rebuild  (Lists all Windows installations that you can add)
        4. Reboot! (type Exit)

    You are now either booting into Windows, or you are not… Any blue screens I cannot help you with at this time. Search the internet for a solution, and in the meantime I intend to write an article on this as well. Comments welcome as always.

    Further Information

    How To Use the Recovery Console on a Windows Server 2003-Based Computer That Does Not Start
    http://support.microsoft.com/kb/326215

    Description of the Windows XP Recovery Console for advanced users
    http://support.microsoft.com/kb/314058

     

     

    jonjor

  • P2V fails with GPT disk using EFI boot

    Some new x64 systems boot from a GPT disk that contains an EFI or UEFI boot partition with an EFI BIOS. Traditionally this meant that the system was of Itanium architecture. SCVMM does not support P2V of Itanium systems as is documented in 'P2V: Requirements for Physical Source Computers'
    http://technet.microsoft.com/en-us/library/cc917954.aspx. There are now x64 (non-Itanium) systems that boot with EFI. These conversions will fail as well due to EFI boot structure.

    Simply check Disk Management on the source machine to see if the boot disk is GPT or MBR. If it is GPT, we do not support P2V as a GPT boot drive requires an EFI or UEFI BIOS.

    This deals with a simple architecture incompatibility. Let’s assume a system uses an EFI or UEFI disk to boot. This also means it is a GPT disk. We are attempting to convert this to a virtual machine so that it can run on a virtual platform. Only Itanium and some newer servers with UEFI architecture can boot EFI as it requires a special BIOS. Hyper-V, and other virtualization platforms, cannot emulate this as they have a generic BIOS based on classic x86 and x64 systems. Therefore, the system disk must be an MBR type to boot in any Windows virtualization implementation. This requirement is not isolated to Hyper-V as any Windows installation cannot boot from GPT disks unless the processor architecture is Itanium or UEFI. During initial Windows installation boot disk type is detected, EFI or MBR, and the appropriate files and registry settings are written out to disk. Windows installations are thus tied to disk type.

    There are no workarounds for moving a Windows system with an EFI partition to non-EFI architecture. EFI and Itanium are in lockstep. Classic x86 and x64 cannot boot EFI, and there and is no simple switch back to MBR boot.

     

    More Information

    EFI and Windows:

    KB951985 - How to set up dynamic boot partition mirroring on GUID partition table (GPT) disks in Windows Server 2008

     

    EFI/GPT not supported by P2V:

    P2V: Converting Physical Computers to Virtual Machines in VMM

    'The information below specifies Itanium systems, with the reason being that an EFI based system will not boot in Hyper-V.
    The following restrictions apply to P2V operation system support:
    VMM does not support P2V conversion for computers with Itanium architecture–based operating systems.'

     

    EFI Support Information:

    Firmware and Boot Environment

    UEFI Support and Requirements for Windows Operating Systems

    Extensible Firmware Interface Specification overview - Intel

    Extensible Firmware Interface

October, 2011

October, 2011