## PowerCLI Reference

# New-VirtualSwitch

## Synopsis

This cmdlet creates a new virtual switch.

Syntax

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

Related Commands

Online version
Get-VirtualSwitch

Detailed Description

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

Parameters

Name | Type | Description | Required? | Pipeline Input | Default Value
--- | --- | --- | --- | --- | ---
VMHost | VMHost | Specifies the host on which you want to create the new virtual switch. | true | true (ByValue)
Name | String | Specifies a name for the new virtual switch. | true | false
NumPorts | Int32 | Specifies 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. | false | false
Nic | PhysicalNic[] | 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. | false | false
Mtu | Int32 | Specifies the maximum transmission unit (MTU) associated with the specified virtual switch (in bytes). The MTU value is always greater than 0. | false | false
Confirm | SwitchParameter | If 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. | false | false
Server | VIServer[] | 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. | false | false
WhatIf | SwitchParameter | Indicates that the cmdlet is run only to display the changes that would be made and actually no objects are modified. | false | false

Return Type

The newly created VirtualSwitch object

Notes

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.

Examples

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

    $vswitch =  New-VirtualSwitch -VMHost 10.23.112.234 -Name VSwitch

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

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

    $network = Get-VMHostNetwork -VMHost 10.23.112.234

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

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

Creates a new virtual switch named VSwitch on the virtual machine host with IP address 10.23.112.234 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.