Invoke-XenVIF

Last published : Nov 12, 2026
Invokes an operation on a VIF object.

Syntax

Invoke-XenVIF [-VIF] <VIF>
    -XenAction {Plug | Unplug | UnplugForce | Move | ConfigureIpv4 | ConfigureIpv6}
    [-PassThru] [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]
Invoke-XenVIF [-Ref] <XenRef[VIF]>
    -XenAction {Plug | Unplug | UnplugForce | Move | ConfigureIpv4 | ConfigureIpv6}
    [-PassThru] [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]
Invoke-XenVIF [-Uuid] <guid>
    -XenAction {Plug | Unplug | UnplugForce | Move | ConfigureIpv4 | ConfigureIpv6}
    [-PassThru] [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]

Description

Invokes an operation on a VIF object. Use the -XenAction parameter to select which operation to perform.
Plug: Hotplug the specified VIF, dynamically attaching it to the running VM.
Unplug: Hot-unplug the specified VIF, dynamically unattaching it from the running VM.
UnplugForce: Forcibly unplug the specified VIF.
Move: Move the specified VIF to the specified network, even while the VM is running.
ConfigureIpv4: Configure IPv4 settings for this virtual interface.
ConfigureIpv6: Configure IPv6 settings for this virtual interface.

Parameters

-Address

The IPv4 address in <addr>/<prefix length> format (for static mode only). Accepted when -XenAction is ConfigureIpv4, ConfigureIpv6.
Attribute Value
Type string
Required False
Position Named
Accepts pipeline input False

-Async

If set, the operation runs asynchronously and returns a Task object that can be used to track its progress.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-BestEffort

If set, the cmdlet continues processing further objects instead of throwing a terminating error when an operation fails for one object.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-Confirm

Prompts for confirmation before running the cmdlet.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False
Aliases cf

-Gateway

The IPv4 gateway (for static mode only; leave empty to not set a gateway). Accepted when -XenAction is ConfigureIpv4, ConfigureIpv6.
Attribute Value
Type string
Required False
Position Named
Accepts pipeline input False

-Mode

Whether to use DHCP, static or no IPv4 assignment. Accepted when -XenAction is ConfigureIpv4, ConfigureIpv6.
Attribute Value
Type vif_ipv4_configuration_mode
Required False
Position Named
Accepts pipeline input False
Accepted values None, Static, DHCP, unknown

-Network

The network to move it to. Accepted when -XenAction is Move.
Attribute Value
Type XenRef[Network]
Required False
Position Named
Accepts pipeline input False

-PassThru

If set, the cmdlet returns the affected object. By default the cmdlet does not generate any output.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-Ref

The VIF object to operate on, specified by its opaque reference.
Attribute Value
Type XenRef[VIF]
Required True
Position 0
Accepts pipeline input True (ByPropertyName)
Aliases opaque_ref

-SessionOpaqueRef

The session object on which to run the cmdlet. This overrides the default session and lets you target a specific open XenServer connection.
Attribute Value
Type string
Required False
Position Named
Accepts pipeline input False

-Uuid

The UUID of the VIF to operate on.
Attribute Value
Type guid
Required True
Position 0
Accepts pipeline input True (ByPropertyName)

-VIF

The VIF object to operate on.
Attribute Value
Type VIF
Required True
Position 0
Accepts pipeline input True (ByValue)

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False
Aliases wi

-XenAction

Selects which action to use.
Attribute Value
Type XenVIFAction
Required True
Position Named
Accepts pipeline input False
Accepted values Plug, Unplug, UnplugForce, Move, ConfigureIpv4, ConfigureIpv6

Inputs

  • VIF
  • XenRef[VIF]
  • guid

Outputs

  • System.Object

Examples

Example 1: Run the Plug operation

PS> Get-XenVIF -Uuid 1871ac51-ce6b-efc3-7fd0-28bc65aa39ff | Invoke-XenVIF -XenAction Plug
Invokes the Plug operation on a VIF.

Example 2: Run the Plug operation by uuid

PS> Invoke-XenVIF -XenAction Plug -Uuid 1871ac51-ce6b-efc3-7fd0-28bc65aa39ff
Invokes the Plug operation on a VIF. -Uuid is the way to be sure of exactly one object.

Example 3: Run Plug asynchronously

PS> Invoke-XenVIF -Uuid 1871ac51-ce6b-efc3-7fd0-28bc65aa39ff -XenAction Plug -Async -PassThru | Wait-XenTask -ShowProgress
Runs the same operation asynchronously and follows the task it returns.
  • Class: VIF
  • Using the XenServer PowerShell module