PowerCLI Reference



This cmdlet creates a new virtual switch.


New-VirtualSwitch [-VMHost] <VMHost> [-Name] <String> [[-NumPorts] <Int32>] [[-Nic] <PhysicalNic[]>] [[-Mtu] <Int32>] [-Server <VIServer[]>] [-Confirm] [-WhatIf] [<CommonParameters>]

Related Commands

Online Version

Detailed Description

This cmdlet creates a new virtual switch on the host that is specified by the VMHost parameter.


NameTypeDescriptionRequired?Pipeline InputDefault Value
VMHostVMHostSpecifies the host on which you want to create the new virtual switch.trueTrue (ByValue)
NameStringSpecifies a name for the new virtual switch.trueFalse
NumPortsInt32Specifies the virtual switch port number. The value is rounded to the closest exact power of two that is greater than the given number (for example, if the user specifies 67, this number is rounded to 128). Note that the port number displayed in the vSphere Client might differ from the value that you specified for the NumPorts parameter.

Note: In ESX 5.5 or later, standard virtual switches are always elastic, so the NumPorts parameter is no longer applicable and its value is ignored.
NicPhysicalNic[]Specifies the physical network interface cards you want to add to the Active NICs of the new virtual switch. This parameter accepts both objects and strings.falseFalse
MtuInt32Specifies the maximum transmission unit (MTU) associated with the specified virtual switch (in bytes). The MTU value is always greater than 0.falseFalse
ConfirmSwitchParameterIf the value is $true, indicates that the cmdlet asks for confirmation before running. If the value is $false, the cmdlet runs without asking for user confirmation.falseFalse
ServerVIServer[]Specifies the vCenter Server systems on which you want to run the cmdlet. If no value is passed to this parameter, the command runs on the default servers. For more information about default servers, see the description of Connect-VIServer.falseFalse
WhatIfSwitchParameterIndicates that the cmdlet is run only to display the changes that would be made and actually no objects are modified.falseFalse

Return Type

The newly created VirtualSwitch object


NumPorts are at least as many as the user specified. (The server rounds it up to the closest exact power of two, greater than the given number) The MTU field is only available on VPX 2.5 and ESX 3.5. For older VPX versions, this field is expected to be null.


-------------------------- Example 1 --------------------------

$vswitch =  New-VirtualSwitch -VMHost -Name VSwitch

Creates a new virtual switch named VSwitch on the virtual machine host with IP address

-------------------------- Example 2 --------------------------

$network = Get-VMHostNetwork -VMHost

$phNic = $network.PhysicalNic[0].DeviceName

$vswitch = New-VirtualSwitch -VMHost -Name VSwitch -Nic $phNic

Creates a new virtual switch named VSwitch on the virtual machine host with IP address with a physical network adapter.

-------------------------- Example 3 --------------------------

Get-VMHost *.128 | New-VirtualSwitch -Name VSwitch -Nic vmnic5,vmnic6

Create a virtual switch named VSwitch with two physical network adapters - 'vmnic5' and 'vmnic6'. Note that the 'vmnic5' and 'vmnic6' adapters must not be assigned to other virtual switches.

Copyright © VMware, Inc. All rights reserved.