PVS Target Devices May Experience Boot, Network, or Registration Issues Following Restart

book

Article ID: CTX696930

calendar_today

Updated On:

Description

Problem Definition

Citrix Provisioning Services (PVS) target devices may exhibit various symptoms following a restart, despite no recent infrastructure, vDisk, or image configuration changes.

Administrators may observe one or more of the following behaviors:

  • Target devices remain offline after restart.
  • Target devices boot to a black screen.
  • Newly created vDisk versions fail to boot consistently.
  • DNS registration is not performed correctly following startup.
  • Boot issues occur intermittently and may affect only a subset of target devices.
  • The issue may be more prevalent in environments with multiple network adapters

Environment

  • Citrix Provisioning Services (PVS)
  • Windows Server and Windows Desktop operating systems
  • BDM, PXE, or ISO boot scenarios
  • Single-NIC or Multi-NIC target devices

Symptoms

Customers may report one or more of the following:

Symptom 1: Target Device booting a vdisk in read/write mode can only successfully boot once

The target device can boot the vdisk in read/write mode successfully only once, with windows failing to fully boot when rebooted

Symptom 2: Black Screen During Boot

Target devices intermittently display a black screen during boot. In some cases, the PVS bootstrap process completes successfully, but Windows never fully starts.

Symptom 3: New vDisk Versions Fail to Boot

After creating or importing a new vDisk version, the updated version may fail to start on some target devices while functioning normally on others.

This vdisk version may boot successfully in some PVS farms, but fail to boot in other PVS farms

Symptom 4: DNS Registration Problems

Target devices may fail to perform expected DNS registration activities after startup, resulting in stale or missing DNS records.

 

Environment

  • Caution! Using Registry Editor incorrectly can cause serious problems that might require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it."
  • The above mentioned sample code is provided to you as is with no representations, warranties or conditions of any kind. You may use, modify and distribute it at your own risk. CITRIX DISCLAIMS ALL WARRANTIES WHATSOEVER, EXPRESS, IMPLIED, WRITTEN, ORAL OR STATUTORY, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NONINFRINGEMENT. Without limiting the generality of the foregoing, you acknowledge and agree that (a) the sample code may exhibit errors, design flaws or other problems, possibly resulting in loss of data or damage to property; (b) it may not be possible to make the sample code fully functional; and (c) Citrix may, without notice or liability to you, cease to make available the current version and/or any future versions of the sample code. In no event should the code be used to support ultra-hazardous activities, including but not limited to life support or blasting activities. NEITHER CITRIX NOR ITS AFFILIATES OR AGENTS WILL BE LIABLE, UNDER BREACH OF CONTRACT OR ANY OTHER THEORY OF LIABILITY, FOR ANY DAMAGES WHATSOEVER ARISING FROM USE OF THE SAMPLE CODE, INCLUDING WITHOUT LIMITATION DIRECT, SPECIAL, INCIDENTAL, PUNITIVE, CONSEQUENTIAL OR OTHER DAMAGES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Although the copyright in the code belongs to Citrix, any distribution of the sample code should include only your own standard copyright attribution, and not that of Citrix. You agree to indemnify and defend Citrix against any and all claims arising from your use, modification or distribution of the sample code."

 

Cause

Investigation identified that affected target devices may retain cached DHCP information across restarts.

Under certain circumstances, Windows may reuse previously cached networking information instead of performing a complete DHCP discovery process during startup.

This can result in:

  • Incorrect route selection.
  • Incorrect network adapter selection.
  • Failure to establish expected communication with PVS infrastructure.
  • Subsequent boot and network-related failures.

Resolution

To prevent this issue impacting an environment, implement a shutdown process that clears cached DHCP information before the target device shuts down.

This forces Windows to perform a complete DHCP DORA (Discover, Offer, Request, Acknowledge) process during the next startup. 

 

Manual Steps

To be completed when the vdisk is in read write mode, just before it will be shutdown for the last time before switching to read only mode

  1. Open regedit - Caution! Refer to the Disclaimer at the end of this article before using the Registry Editor.
  2. Navigate to Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
  3. On each Interface subkey, delete all registry items, keeping only “(Default)” and “EnableDHCP”
  4. image.png
  5. Close regedit, shutdown the maintenance target device, and switch the vdisk to read only.

 

Recommended Automated Steps

Configure a DHCP cache cleanup script as a machine shutdown script within the master image:

Computer Configuration
└─ Windows Settings
└─ Scripts (Startup/Shutdown)
└─ Shutdown
└─ PowerShell Scripts
 
This ensures cached DHCP information is removed prior to every reboot or shutdown event. This ensures cached DHCP information is removed prior to every reboot or shutdown event.
 
Example script which PVS administrator can customize to suit their environment:
 
#Clearing the interface subkeys of all values will force the DHCP 
# client to do a full DHCP discovery the next time it starts.

$IfKey = 'HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces'

Get-ChildItem -Path $IfKey | ForEach-Object {
    
    $IFace = $_.PsPath

    # Values to keep
    $keep = @('(Default)', 'EnableDHCP')

    # Enumerate all value names under the key

    $allValues = (Get-Item $IFace).Property
    foreach ($value in $allValues) {
        if ($keep -notcontains $value) {
            Write-Output "Removing $IFace $value"
            Remove-ItemProperty -Path $IFace -Name $value -ErrorAction SilentlyContinue
        }
    }
}

Important

The sample script is provided as an example implementation of the mitigation. Customers should validate the behavior in a test environment before broad deployment and ensure the script aligns with their operational and networking requirements.

 

Validation

Following implementation of the mitigation:

  • Customers experiencing black screen boot issues reported successful operation across multiple reboot cycles.
  • Customers affected by DNS registration issues confirmed the mitigation resolved the observed behavior.
  • Customers experiencing vDisk boot failures reported successful booting after incorporating the mitigation into the vDisk sealing process.

 

 

Issue/Introduction

Citrix Provisioning Services (PVS) target devices may exhibit various symptoms following a restart, despite no recent infrastructure, vDisk, or image configuration changes.