Add-VMNetworkAdapterAcl
Add-VMNetworkAdapterAcl
Creates an ACL to apply to the traffic through a virtual machine network adapter.
語法
Parameter Set: VMName
Add-VMNetworkAdapterAcl [-VMName] <String[]> -Action <VMNetworkAdapterAclAction> {Allow | Deny | Meter} -Direction <VMNetworkAdapterAclDirection> {Inbound | Outbound | Both} [-CimSession <Microsoft.Management.Infrastructure.CimSession[]> ] [-ComputerName <String[]> ] [-Credential <System.Management.Automation.PSCredential[]> ] [-LocalIPAddress <String[]> ] [-LocalMacAddress <String[]> ] [-Passthru] [-RemoteIPAddress <String[]> ] [-RemoteMacAddress <String[]> ] [-VMNetworkAdapterName <String> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: ManagementOS
Add-VMNetworkAdapterAcl -Action <VMNetworkAdapterAclAction> {Allow | Deny | Meter} -Direction <VMNetworkAdapterAclDirection> {Inbound | Outbound | Both} -ManagementOS [-CimSession <Microsoft.Management.Infrastructure.CimSession[]> ] [-ComputerName <String[]> ] [-Credential <System.Management.Automation.PSCredential[]> ] [-LocalIPAddress <String[]> ] [-LocalMacAddress <String[]> ] [-Passthru] [-RemoteIPAddress <String[]> ] [-RemoteMacAddress <String[]> ] [-VMNetworkAdapterName <String> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: ResourceObject
Add-VMNetworkAdapterAcl [-VMNetworkAdapter] <VMNetworkAdapterBase[]> -Action <VMNetworkAdapterAclAction> {Allow | Deny | Meter} -Direction <VMNetworkAdapterAclDirection> {Inbound | Outbound | Both} [-LocalIPAddress <String[]> ] [-LocalMacAddress <String[]> ] [-Passthru] [-RemoteIPAddress <String[]> ] [-RemoteMacAddress <String[]> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: VMObject
Add-VMNetworkAdapterAcl [-VM] <VirtualMachine[]> -Action <VMNetworkAdapterAclAction> {Allow | Deny | Meter} -Direction <VMNetworkAdapterAclDirection> {Inbound | Outbound | Both} [-LocalIPAddress <String[]> ] [-LocalMacAddress <String[]> ] [-Passthru] [-RemoteIPAddress <String[]> ] [-RemoteMacAddress <String[]> ] [-VMNetworkAdapterName <String> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
詳細描述
The Add-VMNetworkAdapterAcl cmdlet creates an ACL to apply to the traffic through a virtual machine network adapter. When a virtual network adapter is created there is no ACL on it. Given a list of IP-based ACL entries to be applied to traffic in the same direction, the longest match rule decides which one of the entries is most appropriate to apply to a specific packet.
參數
-Action<VMNetworkAdapterAclAction>
Specifies the action for the ACL. Allowed values are Allow, Deny, and Meter. A metering ACL must be IP-based, i.e. either -RemoteIPAddress or -LocalIPAddress must be specified.
別名 |
none |
必要項? |
true |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-CimSession<Microsoft.Management.Infrastructure.CimSession[]>
在遠端工作階段或遠端電腦上執行 Cmdlet。輸入電腦名稱或工作階段物件,例如 New-CimSession 或 Get-CimSession Cmdlet 的輸出。預設為本機電腦上目前的工作階段。
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-ComputerName<String[]>
Specifies one or more Hyper-V hosts on which the ACL is to be created. 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.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-Credential<System.Management.Automation.PSCredential[]>
Specifies one or more user accounts that have permission to perform this action. The default is the current user.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-Direction<VMNetworkAdapterAclDirection>
Specifies the direction of the network traffic to which the ACL is to apply. Allowed values are Inbound, Outbound, or Both. . If Both is specified, the new ACL entry is added to both the inbound direction and the outbound direction. In the output of Get-VMNetworkAdapterAcl, the ACL entry appears in both the inbound ACL list and the outbound ACL list.
別名 |
none |
必要項? |
true |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-LocalIPAddress<String[]>
Specifies the local IP address to which the ACL is to apply. For an inbound packet, this is the destination IP address in the packet header; for an outbound packet, this is the source IP address in the packet header. It can be either IPv4 or IPv6 address. It can be either a host address or a subnet address, e.g. 1.2.3.4, 2001::2008, 192.168.1.0/24, or f001:f002:f003:f004::1/64. The IP address can also be a wildcard, 0.0.0.0/0 for all IPv4 addresses, ::/0 for all IPv6 addresses, or ANY for all IPv4 and IPv6 addresses.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-LocalMacAddress<String[]>
Specifies the local MAC address to which the ACL is to apply. For an inbound packet, this is the destination MAC address in the packet header; for an outbound packet, this is the source MAC address in the packet header. It can be a host MAC address, e.g. 00-ab-00-11-22-33, or a wildcard, ANY, for all MAC addresses.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-ManagementOS
Specifies that the ACL is to be applied in the management (i.e. the parent, or host) operating system.
別名 |
none |
必要項? |
true |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-Passthru
Specifies that an object is to be passed through to the pipeline representing the ACL to be added.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-RemoteIPAddress<String[]>
Specifies the remote IP address to which this ACL is to apply. For an inbound packet, this is the source IP address in the packet header; for an outbound packet, this is the destination IP address in the packet header. It can be either IPv4 or IPv6 address. It can be either a host address or a subnet address, e.g. 1.2.3.4, 2001::2008, 192.168.1.0/24, or f001:f002:f003:f004::1/64.the IP address can also be a wildcard, 0.0.0.0/0 for all IPv4 addresses, ::/0 for all IPv6 addresses, or ANY for all IPv4 and IPv6 addresses.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-RemoteMacAddress<String[]>
Specifies the remote MAC address to which this ACL is to apply. For an inbound packet, this is the source MAC address in the packet header; for an outbound packet, this is the destination MAC address in the packet header. It can be a host MAC address, e.g. 00-ab-00-11-22-33, or a wildcard, ANY, for all MAC addresses.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-VM<VirtualMachine[]>
Specifies the virtual machine on which the ACL is to apply.
別名 |
none |
必要項? |
true |
位置? |
1 |
預設值 |
none |
接受管線輸入? |
True (ByValue) |
接受萬用字元? |
false |
-VMName<String[]>
Specifies the name of the virtual machine on which the ACL is to apply.
別名 |
none |
必要項? |
true |
位置? |
1 |
預設值 |
none |
接受管線輸入? |
True (ByValue) |
接受萬用字元? |
false |
-VMNetworkAdapter<VMNetworkAdapterBase[]>
Specifies the virtual machine network adapter to which the ACL is to apply.
別名 |
none |
必要項? |
true |
位置? |
1 |
預設值 |
none |
接受管線輸入? |
True (ByValue) |
接受萬用字元? |
false |
-VMNetworkAdapterName<String>
Specifies the name of the virtual machine network adapter to which the ACL is to apply.
別名 |
none |
必要項? |
false |
位置? |
named |
預設值 |
none |
接受管線輸入? |
false |
接受萬用字元? |
false |
-Confirm
在執行指令程式之前提示您確認。
必要項? |
false |
位置? |
named |
預設值 |
false |
接受管線輸入? |
false |
接受萬用字元? |
false |
-WhatIf
示範當執行指令程式時會發生什麼事情。此指令程式並未執行。
必要項? |
false |
位置? |
named |
預設值 |
false |
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個指令程式支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216)。
輸入
輸入類型是可透過管道傳送至指令程式的物件類型。
輸出
輸出類型是指令程式所發出的物件類型。
- None by default; Microsoft.HyperV.PowerShell.VMNetworkAdapterAclSetting if –PassThru is specified.
範例
Example 1
This example adds an ACL to allow virtual machine Redmond to send to and receive from traffic on IP subnet 10.0.0.8/8.
PS C:\> Add-VMNetworkAdapterAcl –VMName Redmond –RemoteIPAddress 10.0.0.0/8 –Direction Both –Action Allow
Example 2
This example adds an ACL to deny virtual machine Redmond to send either IPv4 or IPv6 traffic to anywhere and receive such traffic from anywhere.
PS C:\> Add-VMNetworkAdapterAcl –VMName Redmond –RemoteIPAddress ANY –Direction Both –Action Deny
Example 3
This example gets virtual machine Redmond and adds an ACL to deny it to send any traffic to a device with MAC address 03-0f-01-0e-aa-b2 or to receive any traffic from that device.
PS C:\> Get-VM Redmond | Add-VMNetworkAdapterAcl -RemoteMacAddress 03-0f-01-0e-aa-b2 -Direction Both -Action Deny
Example 4
This example gets virtual network adapters from virtual machine Redmond and adds an ACL to meter outgoing traffic sent to IP subnet 192.168.0.0/16.
PS C:\> Get-VMNetworkAdapter -VMName Redmond | Add-VMNetworkAdapterAcl -RemoteIPAddress 192.168.0.0/16 -Direction Outbound -Action Meter