Set-SCVirtualNetworkAdapter
更改与虚拟机、虚拟机模板或用于在 VMM 中创建虚拟机的硬件配置文件关联的虚拟网络适配器的属性。
语法
Set-SCVirtualNetworkAdapter
[-IPv4AddressType <EthernetAddressType>]
[-IPv6AddressType <EthernetAddressType>]
[-EnableMACAddressSpoofing <Boolean>]
[-EnableGuestIPNetworkVirtualizationUpdates <Boolean>]
[-EnableVMNetworkOptimization <Boolean>]
[-VMNetwork <VMNetwork>]
[-VMNetworkServiceSetting <String>]
[-PortClassification <PortClassification>]
[-VMSubnet <VMSubnet>]
[-VLanEnabled <Boolean>]
[-VLanID <UInt16>]
[-DevicePropertiesAdapterNameMode <DevicePropertiesAdapterNameMode>]
[-AdapterFlags <VirtualNetworkAdapterFlags>]
[-VMMServer <ServerConnection>]
-SlotID <Int32>
[-VirtualNetwork <String>]
[-RequiredBandwidth <Decimal>]
[-NoConnection]
[-MACAddress <String>]
[-MACAddressType <String>]
[-LogicalNetwork <LogicalNetwork>]
[-NoLogicalNetwork]
-JobGroup <Guid>
[-VMwarePortGroup <String>]
[-NetworkLocation <String>]
[-NetworkTag <String>]
[-NoPortClassification]
[-DevicePropertiesAdapterName <String>]
[-PortACL <PortACL>]
[-RemovePortACL]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Set-SCVirtualNetworkAdapter
[-IPv4AddressType <EthernetAddressType>]
[-IPv6AddressType <EthernetAddressType>]
[-EnableMACAddressSpoofing <Boolean>]
[-EnableGuestIPNetworkVirtualizationUpdates <Boolean>]
[-EnableVMNetworkOptimization <Boolean>]
[-VMNetwork <VMNetwork>]
[-VMNetworkServiceSetting <String>]
[-PortClassification <PortClassification>]
[-VMSubnet <VMSubnet>]
[-VLanEnabled <Boolean>]
[-VLanID <UInt16>]
[-DevicePropertiesAdapterNameMode <DevicePropertiesAdapterNameMode>]
[-AdapterFlags <VirtualNetworkAdapterFlags>]
[-VMMServer <ServerConnection>]
[-VirtualNetworkAdapter] <VirtualNetworkAdapter>
[-VirtualNetwork <String>]
[-RequiredBandwidth <Decimal>]
[-NoConnection]
[-MACAddress <String>]
[-MACAddressType <String>]
[-LogicalNetwork <LogicalNetwork>]
[-NoLogicalNetwork]
[-JobGroup <Guid>]
[-VMwarePortGroup <String>]
[-NetworkLocation <String>]
[-NetworkTag <String>]
[-NoPortClassification]
[-IPv4Addresses <System.Collections.Generic.List`1[System.String]>]
[-IPv6Addresses <System.Collections.Generic.List`1[System.String]>]
[-IPv4AddressPools <System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.StaticIPAddressPool]>]
[-IPv6AddressPools <System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.StaticIPAddressPool]>]
[-DevicePropertiesAdapterName <String>]
[-PortACL <PortACL>]
[-RemovePortACL]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Set-SCVirtualNetworkAdapter
[-VLanEnabled <Boolean>]
[-VLanID <UInt16>]
[-VMMServer <ServerConnection>]
[[-VirtualNetworkAdapter] <VirtualNetworkAdapter>]
-VirtualNetwork <String>
[-Checkpoint]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
说明
Set-SCVirtualNetworkAdapter cmdlet 更改与虚拟机、虚拟机模板或硬件配置文件关联的虚拟网络适配器的一个或多个属性,这些属性用于在 Virtual Machine Manager (VMM) 环境中创建虚拟机。
可以执行的操作包括:
将虚拟网络适配器连接到虚拟网络。
断开虚拟网络适配器与虚拟网络的连接。
在虚拟网络适配器上指定网络位置和网络标记。
在虚拟网络适配器上指定 MAC 地址。
启用虚拟局域网 (VLAN) ,并为虚拟网络适配器上的该 VLAN 指定 VLAN ID (数字标识符) 。
注意
示例
示例 1:将虚拟网络适配器连接到虚拟网络
PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $Adapter = Get-SCVirtualNetworkAdapter -VM $VM | where { $_.PhysicalAddress -eq "00:16:D3:CC:00:1B" }
PS C:\> Set-SCVirtualNetworkAdapter -VirtualNetworkAdapter $Adapter -VirtualNetwork "ExternalVirtualNetwork01"
第一个命令获取名为 VM01 的虚拟机对象,并将对象存储在$VM变量中。
第二个命令获取 VM01 上的所有虚拟网络适配器对象,选择具有物理 (MAC) 地址为 00:16:D3:CC:00:1B 的适配器对象,然后将对象存储在$Adapter变量中。
最后一个命令将存储在$Adapter中的虚拟网络适配器连接到包含 VM01 的主机上名为 ExternalVirtualNetwork01 的虚拟网络。
示例 2:为虚拟网络适配器指定静态 MAC 地址
PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> $Adapter = Get-SCVirtualNetworkAdapter -VM $VM | where { $_.ID -eq "5c0ee80a-731f-41c8-92f0-85a1619f9a1b" }
PS C:\> Set-SCVirtualNetworkAdapter -VirtualNetworkAdapter $Adapter -PhysicalAddressType "Static" -PhysicalAddress "00:16:D3:CC:00:1C"
第一个命令获取名为 VM02 的虚拟机对象,并将该对象存储在$VM变量中。
第二个命令获取 VM02 上的所有虚拟网络适配器对象,选择具有指定 ID 的虚拟网络适配器,然后将该对象存储在$Adapter变量中。 此示例假定此适配器当前具有动态 MAC 地址。
最后一个命令指定存储在$Adapter中的虚拟网络适配器使用静态 MAC 地址 00:16:D3:CC:00:1C。
示例 3:指定静态 MAC 地址并将其分配给现有虚拟网络适配器
PS C:\> $VM = Get-SCVirtualMachine -Name "VM03"
PS C:\> Set-SCVirtualNetworkAdapter -VirtualNetworkAdapter (Get-VirtualNetworkAdapter -VM $VM | where { $_.ID -eq "95e9cfda-861c-44a3-b2ba-2f796dfe691c"}) -MACAddressType "Static" -MACAddress "00-00-00-00-00-00"
第一个命令获取名为 VM03 的虚拟机对象,并将该对象存储在$VM变量中。
第二个命令按 ID 获取 VM03 上的虚拟网络适配器对象,指定适配器使用静态 MAC 地址类型,并为其分配 MAC 地址。
示例 4:断开指定的虚拟网络适配器与虚拟网络的连接
PS C:\> $VM = Get-SCVirtualMachine -Name "VM04"
PS C:\> $Adapters = Get-SCVirtualNetworkAdapter -VM $VM
PS C:\> Set-SCVirtualNetworkAdapter -VirtualNetworkAdapter $Adapters[1] -NoConnection
第一个命令获取名为 VM04 的虚拟机对象,并将对象存储在$VM变量中。
第二个命令获取 VM04 上的所有虚拟网络适配器对象,并将适配器对象存储在$Adapters中。 此示例假定 VM04 至少有两个虚拟网络适配器。
最后一个命令使用 NoConnection 参数断开第二个虚拟网络适配器 (Adapters[1]) 它连接到的任何虚拟网络的连接。
示例 5:为现有虚拟机指定 VMware 端口组
PS C:\> $VM = Get-SCVirtualMachine -Name "VM05"
PS C:\> $Adapter = $VM.VirtualNetworkAdapters[0]
PS C:\> Set-SCVirtualNetworkAdapter -VirtualNetworkAdapter $Adapter -VMwarePortGroup "VM Network"
第一个命令获取名为 VM05 的虚拟机对象,并将该对象存储在$VM变量中。
第二个命令将第一个 [0] 虚拟网络适配器存储在 $Adapter 变量中的 VM05 上。
最后一个命令将存储在$Adapter中的适配器的虚拟网络适配器设置为 VM 网络,这是希望此适配器连接到的 VMware 端口组的名称。
参数
-AdapterFlags
{{Fill AdapterFlags Description}}
Type: | VirtualNetworkAdapterFlags |
Accepted values: | None, ApplyInfrastructurePortProfileForNetworkController, ApplyNCPortProfileForNetworkController, ApplyInstaceIDPortProfileForNetworkController |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowedVLanList
指定在虚拟机网络适配器上允许的虚拟 LAN 的列表。
注意
此参数适用于 VMM 2019 UR3。
Type: | UInt16 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Checkpoint
指示使用 Can Checkpoint 权限。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DevicePropertiesAdapterName
指定网络适配器的名称。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DevicePropertiesAdapterNameMode
指定适配器名称模式。
Type: | DevicePropertiesAdapterNameMode |
Accepted values: | Disabled, VMNetwork, Custom |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableGuestIPNetworkVirtualizationUpdates
指示是否启用来宾的 IP 网络虚拟化更新。
Type: | Boolean |
Aliases: | GuestIPNetworkVirtualizationUpdatesEnabled |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableMACAddressSpoofing
启用,当设置为$True时,MAC 地址欺骗。
Type: | Boolean |
Aliases: | MACAddressesSpoofingEnabled |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableVMNetworkOptimization
启用,当设置为$True时,虚拟机网络优化。
此功能为支持虚拟机队列的网络适配器 (VMQ) 或 TCP 烟囱卸载的网络适配器提高网络性能。 VMQ 支持为每个虚拟网络适配器创建唯一的网络队列。 TCP 烟囱卸载使网络流量处理能够从网络堆栈中卸载。
Type: | Boolean |
Aliases: | VMNetworkOptimizationEnabled |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IPv4Addresses
指定 IPv4 地址的列表。
Type: | System.Collections.Generic.List`1[System.String] |
Aliases: | IPv4Address |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IPv4AddressPools
指定 IPv4 地址池的列表。
Type: | System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.StaticIPAddressPool] |
Aliases: | IPv4AddressPool |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IPv4AddressType
指定 IPv4 地址类型。 此参数的可接受值为:
- 动态
- 静态
Type: | EthernetAddressType |
Accepted values: | Dynamic, Static |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IPv6Addresses
指定 IPv6 地址的列表。
Type: | System.Collections.Generic.List`1[System.String] |
Aliases: | IPv6Address |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IPv6AddressPools
指定 IPv6 地址池的列表。
Type: | System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.StaticIPAddressPool] |
Aliases: | IPv6AddressPool |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IPv6AddressType
指定 IPv6 地址类型。 此参数的可接受值为:
- 动态
- 静态
Type: | EthernetAddressType |
Accepted values: | Dynamic, Static |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-JobGroup
在运行最后一个包含相同作业组标识符的命令之前,为作为集合运行的一系列命令指定标识符。
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-JobVariable
指定跟踪作业进度,并将其存储在此参数命名的变量中。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LogicalNetwork
指定逻辑网络。 逻辑网络是 IP 子网和 VLAN 的命名分组,用于组织和简化网络分配。
Type: | LogicalNetwork |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MACAddress
为计算机上的物理或虚拟网络适配器指定 MAC 地址或一组 MAC 地址。
- 单个 MAC 地址的示例格式:
-MACAddress "00-15-5D-B4-DC-00"
- 一组 MAC 地址的示例格式:
-MACAddress "00-15-5D-B4-DC-00", "00-1A-A0-E3-75-29"
Type: | String |
Aliases: | EthernetAddress, PhysicalAddress |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MACAddressType
指定要用于虚拟网络适配器的 MAC 地址的类型。 有效值为:Static、Dynamic。
Type: | String |
Aliases: | EthernetAddressType, PhysicalAddressType |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NativeVLanId
指定虚拟机网络适配器的本机虚拟 LAN 标识符。
注意
此参数适用于 VMM 2019 UR3。
Type: | UInt16 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NetworkLocation
指定物理网络适配器或虚拟网络适配器的网络位置,或更改主机的物理网络适配器的默认网络位置。
示例格式:
-NetworkLocation $NetLoc
($NetLoc可能包含 Corp.Contoso.com)-OverrideNetworkLocation $True -NetworkLocation "HostNICNewLocation.Contoso.com"
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NetworkTag
指定与主机上配置为连接到特定内部或外部网络的虚拟网络适配器关联的单词或短语。
NetworkTag 参数标识与同一网络成员具有相同 NetworkTag 的所有虚拟机。 当 VMM 评估要在其中部署虚拟机的可能候选主机时,VMM 将使用 NeworkTag () 。 如果主机不包含与要放置的虚拟机相同的 NetworkTag 的网络上的虚拟机,则主机在放置过程中接收零星。
Type: | String |
Aliases: | Tag |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoConnection
断开虚拟网络适配器与虚拟网络的连接。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoLogicalNetwork
指示没有与此虚拟网络适配器关联的逻辑网络。
Type: | SwitchParameter |
Aliases: | NoVMNetwork |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoPortClassification
指示未提供端口分类。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUser
指定用户名。 此 cmdlet 代表此参数指定的用户运行。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUserRole
指定用户角色。 若要获取用户角色,请使用 Get-SCUserRole cmdlet。 此 cmdlet 代表此参数指定的用户角色运行。
Type: | UserRole |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PhysicalNetworkAdapterName
指定物理网络适配器的名称。
注意
此参数适用于 VMM 2019 UR2。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PortACL
指定端口 ACL 对象。
Type: | PortACL |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PortClassification
指定虚拟网络适配器连接到的交换机的端口分类。
Type: | PortClassification |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PROTipID
指定触发此操作 (PRO 提示) 的性能和资源优化提示的 ID。 此参数允许审核 PRO 提示。
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RemovePortACL
指示此操作 (ACL) 删除端口访问控制列表。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredBandwidth
指定网络适配器所需的网络带宽。
Type: | Decimal |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RunAsynchronously
指示作业异步运行,以便控件立即返回到命令 shell。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SlotID
指定用于标识设备的数字 ID。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VirtualNetwork
指定虚拟网络对象。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VirtualNetworkAdapter
指定虚拟机的虚拟网络适配器对象。
主机类型支持以下数量的虚拟网络适配器:
Hyper-V。 每个虚拟机最多四个模拟适配器。 Windows Server 2003 x64 来宾操作系统上没有可用于模拟网络适配器的驱动程序。
Hyper-V。 每个虚拟机最多 8 个合成适配器。
VMware ESX。 每个虚拟机最多四个模拟适配器。
Citrix XenServer。 每个虚拟机最多 7 个模拟适配器。
Type: | VirtualNetworkAdapter |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VLanEnabled
指示是否为 Hyper-V 或 Citrix XenServer 主机上的虚拟机启用虚拟 LAN (VLAN) 。
- 示例:
-VLANEnabled -VLANID 35
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VLanID
将范围 1-4094 中的数字标识符分配给虚拟机上的虚拟网络适配器或虚拟机主机上的物理网络适配器。
在绑定到主机上物理网络适配器的虚拟机的虚拟网络适配器上配置 VLanID,或在主机上绑定到内部虚拟网络。
示例格式: -VLanEnabled -VLANID 35
Type: | UInt16 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMMServer
指定VMM 服务器对象。
Type: | ServerConnection |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VMNetwork
指定 VM 网络对象。
若要获取 VM 网络对象,请使用 Get-SCVMNetwork cmdlet。
Type: | VMNetwork |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMNetworkServiceSetting
指定 VM 网络服务设置。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMSubnet
指定虚拟机子网对象。
若要获取 VMSubnet 对象,请使用 Get-SCVMSubnet cmdlet。
Type: | VMSubnet |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMwarePortGroup
指定 VMware 端口组。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输出
VirtualNetworkAdapter
此 cmdlet 返回 VirtualNetworkAdapter 对象。
备注
- 需要 VMM 虚拟网络适配器对象,可以使用 Get-SCVirtualNetworkAdapter cmdlet 进行检索。