New-Network
Controller
Load
Balancer
Inbound
Nat
Rule
Syntax
New-NetworkControllerLoadBalancerInboundNatRule
-ConnectionUri <Uri>
-LoadBalancerId <string>
-Properties <LoadBalancerInboundNatRuleProperties>
-ResourceId <string>
[-CertificateThumbPrint <string>]
[-Credential <PSCredential>]
[-Etag <string>]
[-Force]
[-ResourceMetadata <ResourceMetadata>]
Description
This cmdlet adds/updates an inbound NAT rule associated with a load balancer resource. This can be used to forward external traffic to a specific VM in the virtual network
Examples
Example 1
This example creates an inbound NAT rule named natRule1 for a load balancer resource called lb1. The NAT rule specifies frontend and backend port as 3389 and protocol as TCP
//Retrieve the load balancer frontend IP configured beforehand
$frontEndIp=Get-NetworkControllerLoadBalancerFrontendIpConfiguration -ConnectionUri https://networkcontroller -LoadBalancerId lb1
//Retrieve the backend IPs for the NAT rule
$backEndIp=Get-NetworkControllerNetworkInterfaceIpConfiguration -ConnectionUri https://networkcontroller -NetworkInterfaceId nw1
//Define the properties of the NAT rule
$natRule = New-Object Microsoft.Windows.NetworkController.LoadBalancerInboundNatRuleProperties
$natRule.backEndIpConfiguration=$backEndIp
$natRule.backEndPort=3389
$natRule.FrontEndIpConfiguration=$frontEndIp
$natRule.FrontEndPort=3389
$natRule.IdleTimeoutInMinutes=5
$natRule.Protocol="TCP"
New-NetworkControllerLoadBalancerInboundNatRule -ConnectionUri https://networkcontroller -LoadBalancerId lb1 -ResourceId natRule1 -Properties $natRule
Required Parameters
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 |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the load balancer resource where the inbound NAT rule belongs
Type: | string |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the properties of the inbound NAT rule: 1. Front end port 2. Back end port 3. Whether floating IP is enabled 4. Idle timeout (in minutes) 5. Protocol 6. Back end IP addresses behind the NAT 7. Front end IP for the NAT
Type: | LoadBalancerInboundNatRuleProperties |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the unique ID of the inbound NAT rule
Type: | string |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Optional Parameters
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 |
Accept pipeline input: | False |
Accept wildcard characters: | False |
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 |
Accept pipeline input: | False |
Accept wildcard characters: | False |
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 |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Forces the command to run without asking for user confirmation.
Type: | switch |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
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 |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
Following properties can be added/changed for an inbound NAT rule: 1. Front end port 2. Back end port 3. Whether floating IP is enabled 4. Idle timeout (in minutes) 5. Protocol 6. Back end IP addresses behind the NAT 7. Front end IP for the NAT