New-NetworkControllerLoadBalancerOutboundNatRule
Creates/modifies outbound NAT rules associated with a load balancer resource.
Syntax
New-NetworkControllerLoadBalancerOutboundNatRule
[-LoadBalancerId] <String>
[-ResourceId] <String>
[-Properties] <LoadBalancerOutboundNatRuleProperties>
[[-ResourceMetadata] <ResourceMetadata>]
[[-Etag] <String>]
[-Force]
-ConnectionUri <Uri>
[-CertificateThumbprint <String>]
[-Credential <PSCredential>]
[-PassInnerException]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Creates/modifies outbound NAT rules associated with a load balancer resource. This can be used to forward VM network traffic from the virtual network to external destinations using network address translation (NAT).
Examples
Example 1
This example creates a backend address pool from an existing network interface, and then creates a new outbound NAT rule with the backend address pool and an existing load balancer front end IP. The outbound NAT rule is named outRule1 and it is associated with an existing load balancer resource named lb1
//Retrieve the backend IPs that will form the pool
$backEndIp=Get-NetworkControllerNetworkInterfaceIpConfiguration -ConnectionUri https://networkcontroller -NetworkInterfaceId nw1
//Define the properties of the backend address pool
$bePool = New-Object Microsoft.Windows.NetworkController.LoadBalancerBackendAddressPoolProperties
$bePool.backEndIpConfiguration=$backEndIp
//Retrieve the load balancer frontend IP configured beforehand
$frontEndIp=Get-NetworkControllerLoadBalancerFrontendIpConfiguration -ConnectionUri https://networkcontroller -LoadBalancerId lb1
//create the backend address pool
$backEndIpPool=New-NetworkControllerLoadBalancerBackEndAddressPool -ConnectionUri https://networkcontroller -LoadBalancerId lb1 -ResourceId be1 -Properties $bePool
//create the outbound NAT rule
$outNat=New-Object Microsoft.Windows.NetworkController.LoadBalancerOutboundNatRuleProperties
$outNat.Protocol="TCP"
$outNat.BackEndAddressPool= $backEndIpPool
$outNat.frontEndIPConfigur
Parameters
-CertificateThumbPrint
Specifies the digital public key X.509 certificate of a user account that has permission to perform this action. This is the certificate thumbprint of the certificate. This thumbprint must also be provided in the ClientCertificateThumbprint parameter in the Install-NetworkController or Set-NetworkController cmdlet so that Network Controller can authorize this user.
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: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionUri
Specifies the Uniform Resource Identifier (URI) of the Network Controller, used by all Representational State Transfer (REST) clients to connect to Network Controller.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Specifies a user credential that has permission to perform this action. The default value is the current user.This user must be present in the security group provided in the ClientSecurityGroup parameter in the Install-NetworkController cmdlet.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Etag
Specifies the entity tag (ETag) parameter of the resource. An ETag (entity tag) is an HTTP response header returned by an HTTP-compliant web server used to determine change in the content of a resource at a given URL. The value of the header is an opaque string representing the state of the resource at the time the response was generated.
Type: | string |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Forces the command to run without asking for user confirmation.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LoadBalancerId
Specifies the load balancer resource where the outbound NAT rule belongs
Type: | string |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassInnerException
This thumbprint must also be provided in the ClientCertificateThumbprint parameter in the Install-NetworkController or Set-NetworkController cmdlet so that Network Controller can authorize this user.
The thumbprint must be provided only if the network controller client authentication is X509 certificates. Get-NetworkController retrieves that client authentication and authorization information.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Properties
Specifies the properties of the outbound NAT rule: 1. Protocol 2. Backend address pool associated with the NAT rule 3. Front end IP associated with the NAT rule
Type: | LoadBalancerOutboundNatRuleProperties |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ResourceId
Specifies the unique identifier for the outbound NAT rule
Type: | string |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ResourceMetadata
This parameter contains metadata information for the client, such as the tenant ID, group ID, and resource name.
Type: | ResourceMetadata |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
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: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
Microsoft.Windows.NetworkController.LoadBalancerOutboundNatRuleProperties
Following properties of an outbound NAT rule can be added/changed: 1. Protocol 2. Backend address pool associated with the NAT rule 3. Front end IP associated with the NAT rule