Add-VMNetworkAdapter
Adds a virtual network adapter to a virtual machine.
Syntax
Add-VMNetworkAdapter
[-CimSession <CimSession[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential[]>]
[-VMName] <String[]>
[-SwitchName <String>]
[-IsLegacy <Boolean>]
[-Name <String>]
[-DynamicMacAddress]
[-StaticMacAddress <String>]
[-Passthru]
[-ResourcePoolName <String>]
[-DeviceNaming <OnOffState>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-VMNetworkAdapter
[-CimSession <CimSession[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential[]>]
[-ManagementOS]
[-SwitchName <String>]
[-Name <String>]
[-DynamicMacAddress]
[-StaticMacAddress <String>]
[-Passthru]
[-DeviceNaming <OnOffState>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-VMNetworkAdapter
[-SwitchName <String>]
[-IsLegacy <Boolean>]
[-Name <String>]
[-DynamicMacAddress]
[-StaticMacAddress <String>]
[-Passthru]
[-ResourcePoolName <String>]
[-VM] <VirtualMachine[]>
[-DeviceNaming <OnOffState>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Add-VMNetworkAdapter cmdlet adds a virtual network adapter to a virtual machine.
Examples
Example 1
PS C:\> Add-VMNetworkAdapter -VMName Redmond -Name "Redmond NIC1"
This example adds a virtual network adapter named Redmond NIC1 to a virtual machine named Redmond.
Example 2
PS C:\> Add-VMNetworkAdapter -VMName Test -SwitchName Network
This example adds a virtual network adapter to a virtual machine named Test and connects it to a virtual switch named Network.
Example 3
PS C:\> Get-VM Test | Add-VMNetworkAdapter -IsLegacy $true -Name Bootable
This example uses two cmdlets and the pipeline in one command to perform the operation.
Example 4
PS C:\> Add-VMNetworkAdapter -ManagementOS -Name Secondary
This example adds a second virtual network adapter in the management operating system.
Parameters
-CimSession
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.
Type: | CimSession[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Specifies one or more Hyper-V hosts on which the virtual network adapter is to be added. NetBIOS names, IP addresses, and fully qualified domain names are allowable. The default is the local computer. Use localhost or a dot (.) to specify the local computer explicitly.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Specifies one or more user accounts that have permission to perform this action. The default is the current user.
Type: | PSCredential[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DeviceNaming
Type: | OnOffState |
Accepted values: | On, Off |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DynamicMacAddress
Assigns a dynamically generated MAC address to the new virtual network adapter.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IsLegacy
Specifies whether the virtual network adapter is the legacy type.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ManagementOS
Specifies the management operating system.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Specifies a name for the new virtual network adapter. The default value is "Network Adapter."
Type: | String |
Aliases: | VMNetworkAdapterName |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Passthru
Specifies that an object is to be passed through to be pipeline representing the network adapter to be added. If you specify -ManagementOS, the object passed is a Microsoft.HyperV.PowerShell.VMInternalNetworkAdapter; otherwise the object passed is a Microsoft.HyperV.PowerShell.VMNetworkAdapter.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ResourcePoolName
Specifies the friendly name of a resource pool.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StaticMacAddress
Assigns a specific MAC address to the new virtual network adapter.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SwitchName
Specifies the name of the virtual switch to connect to the new network adapter. If the switch name is not unique, then the operation fails.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VM
Specifies the virtual machine on which the network adapter is to be added.
Type: | VirtualMachine[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VMName
Specifies the name of the virtual machine on which the network adapter is to be added.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
None
Outputs
None
By default, this cmdlet doesn't return any output.
Microsoft.HyperV.PowerShell.VMNetworkAdapter
If PassThru is specified, a Microsoft.HyperV.PowerShell.VMNetworkAdapter object is output by default.
Microsoft.HyperV.PowerShell.VMInternalNetworkAdapter
If PassThru and ManagementOS is specified, then Microsoft.HyperV.PowerShell.VMInternalNetworkAdapter is output.